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

int display_debug_lines(dwarf_section *section,void *file)

{
  longlong lVar1;
  code *pcVar2;
  undefined *puVar3;
  ushort uVar4;
  DWARF2_Internal_LineInfo *end;
  char *pcVar5;
  uint uVar6;
  byte bVar12;
  uint uVar7;
  size_t sVar8;
  char *pcVar9;
  char *pcVar10;
  char *__format;
  uchar *puVar11;
  uint addrdelta;
  dwarf_section *extraout_ECX;
  int iVar13;
  dwarf_section *extraout_ECX_00;
  dwarf_section *extraout_ECX_01;
  dwarf_section *extraout_ECX_02;
  dwarf_section *extraout_ECX_03;
  dwarf_section *extraout_ECX_04;
  uchar uVar14;
  DWARF2_Internal_LineInfo *pDVar15;
  byte *pbVar16;
  DWARF2_Internal_LineInfo *__string;
  undefined4 *puVar17;
  int iVar18;
  byte *pbVar19;
  uint uVar20;
  undefined4 uVar21;
  DWARF2_Internal_LineInfo *pDVar22;
  bool bVar23;
  bool bVar24;
  undefined1 uVar25;
  bool bVar26;
  undefined1 uVar27;
  byte bVar28;
  dwarf_vma dVar29;
  dwarf_vma dVar30;
  dwarf_vma dVar31;
  elf_vma eVar32;
  undefined1 *puVar33;
  dwarf_section *pdVar34;
  uint *puVar35;
  uint *puVar36;
  uchar *in_stack_ffffff2c;
  DWARF2_Internal_LineInfo *in_stack_ffffff30;
  DWARF2_Internal_LineInfo *pDVar37;
  uchar **in_stack_ffffff34;
  undefined4 in_stack_ffffff38;
  DWARF2_Internal_LineInfo *local_bc;
  DWARF2_Internal_LineInfo *local_b8;
  undefined8 local_b4;
  uint local_ac;
  int local_a8;
  undefined4 *local_a4;
  DWARF2_Internal_LineInfo *local_9c;
  int local_98;
  uchar *local_94;
  uchar *local_90;
  uint local_8c;
  uchar local_88;
  uint local_84;
  uint local_7c;
  uchar *local_78;
  char *local_6c;
  DWARF2_Internal_LineInfo *local_60;
  int local_58;
  undefined1 *local_54 [3];
  uchar *end_of_sequence;
  uint bytes_read;
  DWARF2_Internal_LineInfo linfo;
  
  bVar28 = 0;
  local_bc = (DWARF2_Internal_LineInfo *)section->start;
  end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size);
  if (do_debug_lines == 0) {
    do_debug_lines = 1;
  }
  else if ((do_debug_lines & 1U) == 0) {
    if ((do_debug_lines & 2U) != 0) {
      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;
      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,
                (dwarf_section *)&do_debug_lines);
      uVar25 = local_bc < end;
      uVar27 = local_bc == end;
      if (!(bool)uVar25) goto LAB_0005a988;
      local_58 = 1;
      goto LAB_0005a9d0;
    }
    goto LAB_0005a988;
  }
  pcVar9 = section->name;
  if ((do_follow_links == 0) ||
     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)) {
    in_stack_ffffff2c = (uchar *)0x5;
    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");
    printf(pcVar5,pcVar9);
  }
  else {
    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)
    ;
    printf(pcVar5,pcVar9);
  }
  puVar3 = PTR_stdout_000b3fd8;
  bVar23 = local_bc < end;
  bVar26 = local_bc == end;
  pDVar37 = local_bc;
  if (bVar23) {
LAB_0005b368:
    do {
      iVar13 = 0xc;
      pbVar16 = (byte *)section->name;
      pbVar19 = (byte *)".debug_line.";
      do {
        if (iVar13 == 0) break;
        iVar13 = iVar13 + -1;
        bVar23 = *pbVar16 < *pbVar19;
        bVar26 = *pbVar16 == *pbVar19;
        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;
        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;
      } while (bVar26);
      bVar24 = false;
      bVar23 = (!bVar23 && !bVar26) == bVar23;
      if (bVar23) {
        iVar13 = 0x10;
        pbVar16 = (byte *)section->name;
        pbVar19 = (byte *)".debug_line.dwo";
        do {
          if (iVar13 == 0) break;
          iVar13 = iVar13 + -1;
          bVar24 = *pbVar16 < *pbVar19;
          bVar23 = *pbVar16 == *pbVar19;
          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;
          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;
        } while (bVar23);
        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;
        linfo.li_offset_size = DAT_000b7640;
        linfo.li_length._0_4_ = saved_linfo_11144;
        linfo.li_length._4_4_ = DAT_000b7624;
        linfo.li_version = (ushort)DAT_000b7628;
        linfo._10_2_ = DAT_000b7628._2_2_;
        linfo.li_prologue_length._0_4_ = DAT_000b762c;
        linfo.li_prologue_length._4_4_ = DAT_000b7630;
        linfo._20_4_ = DAT_000b7634;
        linfo.li_line_base = DAT_000b7638;
        linfo.li_line_range = (uchar)DAT_000b763c;
        linfo.li_opcode_base = DAT_000b763c._1_1_;
        linfo._30_2_ = DAT_000b763c._2_2_;
        if ((uchar)DAT_000b763c == '\0') {
          pcVar9 = 
          "Partial .debug_line. section encountered without a prior full .debug_line section\n";
          end_of_sequence = (uchar *)end;
LAB_0005d6a3:
          in_stack_ffffff2c = (uchar *)0x5;
          pcVar9 = (char *)dcgettext(0,pcVar9);
          warn(pcVar9);
          pdVar34 = extraout_ECX_04;
          goto LAB_0005d6b6;
        }
        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;
        state_machine_regs.address._0_4_ = 0;
        state_machine_regs.address._4_4_ = 0;
        state_machine_regs.view = 0;
        state_machine_regs.file = 1;
        state_machine_regs.line = 1;
        state_machine_regs.column = 0;
        state_machine_regs.basic_block = 0;
        state_machine_regs.op_index = '\0';
        state_machine_regs.end_sequence = '\0';
        state_machine_regs.last_file_entry = 0;
        local_94 = (uchar *)0x0;
        end_of_sequence = (uchar *)end;
      }
      else {
LAB_0005bd30:
        local_94 = read_debug_line_header
                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,
                              in_stack_ffffff30,in_stack_ffffff34);
        pdVar34 = extraout_ECX_01;
        if (local_94 == (uchar *)0x0) {
LAB_0005d6b6:
          uVar25 = 0;
          uVar6 = do_debug_lines & 2;
          uVar27 = uVar6 == 0;
          dVar29 = state_machine_regs.address;
          if ((bool)uVar27) goto LAB_0005a98d;
          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;
          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);
          local_58 = 0;
          goto LAB_0005a9d0;
        }
        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);
        printf(pcVar9,(int)pDVar37 - (int)local_bc);
        uVar21 = (undefined4)linfo.li_length;
        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);
        printf(pcVar9,uVar21);
        uVar6 = linfo._8_4_ & 0xffff;
        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);
        printf(pcVar9,uVar6);
        uVar21 = (undefined4)linfo.li_prologue_length;
        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);
        printf(pcVar9,uVar21);
        uVar6 = linfo._20_4_ & 0xff;
        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);
        printf(pcVar9,uVar6);
        if (3 < linfo.li_version) {
          uVar6 = (uint)linfo._20_4_ >> 8;
          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);
          printf(pcVar9,uVar6 & 0xff);
        }
        uVar6 = (uint)linfo._20_4_ >> 0x10;
        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);
        printf(pcVar9,uVar6 & 0xff);
        iVar13 = linfo.li_line_base;
        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);
        printf(pcVar9,iVar13);
        uVar6 = linfo._28_4_ & 0xff;
        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);
        printf(pcVar9,uVar6);
        uVar6 = (uint)linfo._28_4_ >> 8;
        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);
        printf(pcVar9,uVar6 & 0xff);
        if (linfo.li_line_range == '\0') {
          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
          warn(pcVar9);
          linfo.li_line_range = '\x01';
        }
        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;
        state_machine_regs.address._0_4_ = 0;
        state_machine_regs.address._4_4_ = 0;
        state_machine_regs.address = 0;
        state_machine_regs.view = 0;
        state_machine_regs.file = 1;
        state_machine_regs.line = 1;
        state_machine_regs.column = 0;
        state_machine_regs.basic_block = 0;
        state_machine_regs.op_index = '\0';
        state_machine_regs.end_sequence = '\0';
        state_machine_regs.last_file_entry = 0;
        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {
          pcVar9 = "Line Base extends beyond end of section\n";
          goto LAB_0005d6a3;
        }
        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);
        printf(pcVar9);
        uVar6 = (uint)linfo.li_opcode_base;
        if (1 < linfo.li_opcode_base) {
          iVar13 = 1;
          do {
            bVar12 = local_94[iVar13 + -1];
            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",
                                        (uint)bVar12,5);
            iVar18 = iVar13 + 1;
            printf(pcVar9,iVar13,(uint)bVar12);
            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;
            iVar13 = iVar18;
          } while (iVar18 < (int)uVar6);
        }
        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));
        if (linfo.li_version < 5) {
          if ((byte)pDVar37->li_length == 0) {
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);
            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);
            printf(pcVar9);
            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;
LAB_0005d01c:
            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);
            printf(pcVar9,(int)pDVar22 - (int)local_bc);
            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);
            printf(pcVar9);
            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {
              pDVar37 = pDVar22;
              while( true ) {
                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;
                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);
                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);
                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);
                puVar35 = &bytes_read;
                in_stack_ffffff30 = end;
                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);
                printf("%s\t");
                pbVar16 = pbVar16 + bytes_read;
                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);
                printf("%s\t");
                pbVar16 = pbVar16 + bytes_read;
                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);
                printf("%s\t",pcVar9);
                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
                pDVar15 = pDVar37;
                printf("%.*s\n",(int)end - (int)pDVar37);
                if (end == pDVar22) break;
                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))
                goto LAB_0005c031;
              }
              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);
              warn(pcVar9);
              pDVar22 = end;
            }
          }
          else {
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");
            printf(pcVar9,(int)pDVar37 - (int)local_bc);
            pdVar34 = extraout_ECX_02;
            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {
              iVar13 = 0;
              do {
                iVar13 = iVar13 + 1;
                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);
                in_stack_ffffff30 = pDVar37;
                printf("  %d\t%.*s\n",iVar13);
                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));
                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);
                pdVar34 = extraout_ECX_03;
                if (end <= pDVar37) break;
              } while ((byte)pDVar37->li_length != 0);
            }
            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);
            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;
LAB_0005c013:
            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);
            printf(pcVar9);
          }
LAB_0005c031:
          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);
        }
        else {
          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;
          load_debug_section_with_follow(line_str,file);
          pcVar9 = "Directory";
          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;
          pdVar34 = (dwarf_section *)0x0;
          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();
          display_formatted_table
                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,
                     pDVar37,pdVar34,pcVar9,pDVar22);
          pcVar9 = "File name";
          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;
          pdVar34 = (dwarf_section *)0x0;
          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();
          pDVar37 = (DWARF2_Internal_LineInfo *)
                    display_formatted_table
                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,
                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);
        }
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        saved_linfo_11144 = (undefined4)linfo.li_length;
        DAT_000b7624 = linfo.li_length._4_4_;
        DAT_000b7628._0_2_ = linfo.li_version;
        DAT_000b7628._2_2_ = linfo._10_2_;
        DAT_000b762c = (undefined4)linfo.li_prologue_length;
        DAT_000b7630 = linfo.li_prologue_length._4_4_;
        DAT_000b7634._0_1_ = linfo.li_min_insn_length;
        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;
        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;
        DAT_000b7634._3_1_ = linfo._23_1_;
        DAT_000b7638 = linfo.li_line_base;
        DAT_000b763c._0_1_ = linfo.li_line_range;
        DAT_000b763c._1_1_ = linfo.li_opcode_base;
        DAT_000b763c._2_2_ = linfo._30_2_;
        DAT_000b7640 = linfo.li_offset_size;
      }
      linfo.li_length._0_4_ = saved_linfo_11144;
      linfo.li_length._4_4_ = DAT_000b7624;
      linfo._8_4_ = DAT_000b7628;
      linfo.li_prologue_length._0_4_ = DAT_000b762c;
      linfo.li_prologue_length._4_4_ = DAT_000b7630;
      linfo._20_4_ = DAT_000b7634;
      linfo.li_line_base = DAT_000b7638;
      linfo._28_4_ = DAT_000b763c;
      linfo.li_offset_size = DAT_000b7640;
      if (pDVar37 < end_of_sequence) {
        in_stack_ffffff2c = (uchar *)0x5;
        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");
        printf(pcVar9);
        pDVar22 = pDVar37;
        if (pDVar37 < end_of_sequence) {
LAB_0005b6b6:
          uVar6 = (int)pDVar22 - (int)local_bc;
          printf("  [0x%08lx]");
          dVar29 = state_machine_regs.address;
          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);
          bVar12 = (byte)pDVar22->li_length;
          if (linfo.li_opcode_base <= bVar12) {
            bVar12 = bVar12 - linfo.li_opcode_base;
            uVar20 = linfo._20_4_ & 0xff;
            uVar7 = (uint)(bVar12 / linfo.li_line_range);
            if (linfo.li_max_ops_per_insn == '\x01') {
              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;
              uVar20 = (uint)lVar1;
              state_machine_regs.address = lVar1 + state_machine_regs.address;
              if (uVar20 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)
              ;
              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);
              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";
              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",
                                           5);
              puVar33 = &DAT_0007bc55;
            }
            else {
              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,
                                    CARRY4((uint)state_machine_regs.op_index,uVar7),
                                    linfo.li_max_ops_per_insn,0,local_54);
              puVar33 = local_54[0];
              uVar20 = iVar13 * uVar20;
              state_machine_regs.address = dVar29 + uVar20;
              state_machine_regs.op_index = (uchar)local_54[0];
              if (uVar20 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)
              ;
              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);
              __format = (char *)dcgettext(0,
                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"
                                           ,5);
              pcVar9 = "";
            }
            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);
            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;
            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);
            state_machine_regs.line = (uint)in_stack_ffffff2c;
            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);
            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);
            printf(pcVar5,pcVar9);
            if (state_machine_regs.view == 0) goto LAB_0005bb80;
LAB_0005b679:
            uVar6 = state_machine_regs.view;
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0," (view %u)\n");
            printf(pcVar9,uVar6);
LAB_0005b698:
            state_machine_regs.view = state_machine_regs.view + 1;
            goto LAB_0005b6a1;
          }
          switch(bVar12) {
          case 0:
            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;
            iVar13 = process_extended_line_op
                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);
            break;
          case 1:
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Copy");
            printf(pcVar9);
            if (state_machine_regs.view != 0) goto LAB_0005b679;
LAB_0005bb80:
            putc(10,*(FILE **)PTR_stdout_000b3fd8);
            goto LAB_0005b698;
          case 2:
            puVar35 = &bytes_read;
            in_stack_ffffff30 = end;
            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
            dVar29 = state_machine_regs.address;
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            local_ac = (uint)dVar30;
            local_a8 = (int)(dVar30 >> 0x20);
            if (linfo.li_max_ops_per_insn == '\x01') {
              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);
              uVar6 = (uint)lVar1;
              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);
              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);
              if (iVar13 != 0 || uVar6 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);
              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);
              pcVar9 = "  Advance PC by %s to 0x%s%s\n";
              goto LAB_0005b8b1;
            }
            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,
                                  local_a8 +
                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),
                                  linfo.li_max_ops_per_insn,0,local_54);
            puVar33 = local_54[0];
            uVar6 = iVar13 * (linfo._20_4_ & 0xff);
            state_machine_regs.address = dVar29 + uVar6;
            state_machine_regs.op_index = (uchar)local_54[0];
            if (uVar6 != 0) {
              state_machine_regs.view = 0;
            }
            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);
            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");
            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);
            break;
          case 3:
            puVar35 = &bytes_read;
            in_stack_ffffff30 = end;
            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);
            state_machine_regs.line = (uint)in_stack_ffffff2c;
            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);
            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);
            printf(pcVar5,pcVar9);
            break;
          case 4:
            puVar35 = &bytes_read;
            in_stack_ffffff30 = end;
            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");
            printf(pcVar5,pcVar9);
            state_machine_regs.file = (uint)dVar29;
            break;
          case 5:
            puVar35 = &bytes_read;
            in_stack_ffffff30 = end;
            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");
            printf(pcVar5,pcVar9);
            state_machine_regs.column = (uint)dVar29;
            break;
          case 6:
            bVar23 = state_machine_regs.is_stmt == 0;
            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");
            printf(pcVar5,pcVar9);
            state_machine_regs.is_stmt = (uint)bVar23;
            break;
          case 7:
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");
            printf(pcVar9);
            state_machine_regs.basic_block = 1;
            break;
          case 8:
            if (linfo.li_max_ops_per_insn == '\0') {
                    /* WARNING: Does not return */
              pcVar2 = (code *)invalidInstructionException();
              (*pcVar2)();
            }
            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /
                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);
            state_machine_regs.address = state_machine_regs.address + uVar20;
            if (uVar20 != 0) {
              state_machine_regs.view = 0;
            }
            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);
            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);
            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";
LAB_0005b8b1:
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,pcVar9);
            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);
            break;
          case 9:
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);
            if (pDVar22 < end) {
              uVar20 = 2;
LAB_0005d4cd:
              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);
              uVar6 = uVar20;
            }
            else {
              eVar32 = 0;
              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))
              goto LAB_0005d4cd;
            }
            state_machine_regs.address = eVar32 + state_machine_regs.address;
            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
            in_stack_ffffff2c =
                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,
                                         (uint)state_machine_regs.address);
            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);
            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);
            printf(pcVar5,pcVar9);
            pDVar37 = pDVar22;
            break;
          case 10:
            pcVar9 = "  Set prologue_end to true\n";
            goto LAB_0005b70b;
          case 0xb:
            pcVar9 = "  Set epilogue_begin to true\n";
LAB_0005b70b:
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,pcVar9);
            printf(pcVar9);
            pDVar22 = pDVar37;
            if (end_of_sequence <= pDVar37) goto LAB_0005b730;
            goto LAB_0005b6b6;
          case 0xc:
            puVar35 = &bytes_read;
            in_stack_ffffff30 = end;
            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");
            printf(pcVar5,pcVar9);
            break;
          default:
            in_stack_ffffff2c = (uchar *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");
            printf(pcVar9,(uint)bVar12);
            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {
              puVar35 = &bytes_read;
              for (; uVar6 != 1; uVar6 = uVar6 - 1) {
                puVar36 = puVar35;
                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);
                printf("0x%s%s",pcVar9,&DAT_0007c4b1);
                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
              }
              in_stack_ffffff30 = end;
              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);
              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);
              in_stack_ffffff2c = "";
              printf("0x%s%s",pcVar9);
              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            }
            putc(10,*(FILE **)puVar3);
          }
LAB_0005b6a1:
          pDVar22 = pDVar37;
          if (end_of_sequence <= pDVar37) goto LAB_0005b730;
          goto LAB_0005b6b6;
        }
LAB_0005b730:
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        bVar23 = end < pDVar37;
        bVar26 = end == pDVar37;
        pdVar34 = extraout_ECX_00;
        if (end <= pDVar37) break;
        goto LAB_0005b368;
      }
      in_stack_ffffff2c = (uchar *)0x5;
      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");
      printf(pcVar9);
      bVar23 = end < pDVar37;
      bVar26 = end == pDVar37;
      pdVar34 = extraout_ECX;
    } while (pDVar37 < end);
    uVar25 = 0;
    uVar27 = (do_debug_lines & 2U) == 0;
    if (!(bool)uVar27) {
      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;
      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);
      local_58 = 1;
LAB_0005a9d0:
      do {
        local_6c = ".debug_line.";
        iVar13 = 0xc;
        pbVar16 = (byte *)section->name;
        do {
          if (iVar13 == 0) break;
          iVar13 = iVar13 + -1;
          uVar25 = *pbVar16 < (byte)*local_6c;
          uVar27 = *pbVar16 == *local_6c;
          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;
          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);
        } while ((bool)uVar27);
        bVar23 = false;
        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;
        if (bVar26) {
          iVar13 = 0x10;
          pbVar16 = (byte *)section->name;
          pbVar19 = (byte *)".debug_line.dwo";
          do {
            if (iVar13 == 0) break;
            iVar13 = iVar13 + -1;
            bVar23 = *pbVar16 < *pbVar19;
            bVar26 = *pbVar16 == *pbVar19;
            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;
            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;
          } while (bVar26);
          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;
          linfo.li_offset_size = DAT_000b7600;
          linfo.li_length._0_4_ = saved_linfo_11206;
          linfo.li_length._4_4_ = DAT_000b75e4;
          linfo.li_version = (ushort)DAT_000b75e8;
          linfo._10_2_ = DAT_000b75e8._2_2_;
          linfo.li_prologue_length._0_4_ = DAT_000b75ec;
          linfo.li_prologue_length._4_4_ = DAT_000b75f0;
          linfo._20_4_ = DAT_000b75f4;
          linfo.li_line_base = DAT_000b75f8;
          linfo.li_line_range = (uchar)DAT_000b75fc;
          linfo.li_opcode_base = DAT_000b75fc._1_1_;
          linfo._30_2_ = DAT_000b75fc._2_2_;
          if ((uchar)DAT_000b75fc == '\0') {
            end_of_sequence = (uchar *)end;
            pcVar9 = (char *)dcgettext(0,
                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"
                                       ,5);
            warn(pcVar9);
            dVar29 = state_machine_regs.address;
            goto LAB_0005d718;
          }
          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;
          state_machine_regs.address._0_4_ = 0;
          state_machine_regs.op_index = '\0';
          state_machine_regs.end_sequence = '\0';
          state_machine_regs.address._4_4_ = 0;
          state_machine_regs.view = 0;
          state_machine_regs.file = 1;
          state_machine_regs.line = 1;
          state_machine_regs.column = 0;
          state_machine_regs.basic_block = 0;
          state_machine_regs.last_file_entry = 0;
          local_b4 = 0;
          local_a4 = (undefined4 *)0x0;
          local_94 = (uchar *)0x0;
          local_b8 = (DWARF2_Internal_LineInfo *)0x0;
          local_90 = (uchar *)0x0;
          pDVar22 = local_bc;
          end_of_sequence = (uchar *)end;
          if (local_bc < end) goto LAB_0005ab5e;
        }
        else {
LAB_0005c150:
          local_90 = read_debug_line_header
                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,
                                pDVar37,in_stack_ffffff34);
          dVar29 = state_machine_regs.address;
          if (local_90 == (uchar *)0x0) {
LAB_0005d718:
            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);
            state_machine_regs.address._0_4_ = (undefined4)dVar29;
            return 0;
          }
          if (linfo.li_line_range == '\0') {
            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
            warn(pcVar9);
            linfo.li_line_range = '\x01';
          }
          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;
          state_machine_regs.address._0_4_ = 0;
          state_machine_regs.op_index = '\0';
          state_machine_regs.end_sequence = '\0';
          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;
          state_machine_regs.address._4_4_ = 0;
          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));
          state_machine_regs.view = 0;
          state_machine_regs.file = 1;
          state_machine_regs.line = 1;
          state_machine_regs.column = 0;
          state_machine_regs.basic_block = 0;
          state_machine_regs.last_file_entry = 0;
          if (end <= pDVar22) {
            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);
            warn(pcVar9,uVar6);
            dVar29 = CONCAT44(state_machine_regs.address._4_4_,
                              (undefined4)state_machine_regs.address);
            goto LAB_0005d718;
          }
          if (4 < linfo.li_version) {
            load_debug_section_with_follow(line_str,file);
            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);
            pDVar37 = pDVar15;
            if (pDVar15 < end) {
              iVar13 = 1;
LAB_0005d415:
              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);
              local_ac = (uint)eVar32 & 0xff;
              if ((eVar32 & 0xff) != 0) {
                iVar13 = 0;
                uVar6 = 0;
                do {
                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);
                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);
                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
                  bVar23 = 0xfffffffe < uVar6;
                  uVar6 = uVar6 + 1;
                  iVar13 = iVar13 + (uint)bVar23;
                } while (iVar13 != 0 || local_ac != uVar6);
              }
            }
            else {
              iVar13 = (int)end - (int)pDVar22;
              if (iVar13 - 1U < 8) goto LAB_0005d415;
              local_ac = 0;
            }
            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;
            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);
            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);
            if (end == pDVar37) {
              pcVar9 = "Corrupt directories list\n";
            }
            else {
              local_b4._0_4_ = (uchar *)dVar29;
              local_b4._4_4_ = (uint)(dVar29 >> 0x20);
              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);
              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {
                local_9c = (DWARF2_Internal_LineInfo *)0x0;
                local_98 = 0;
                do {
                  if (local_ac != 0) {
                    local_94 = (uchar *)0x0;
                    local_b8 = pDVar15;
                    do {
                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);
                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);
                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);
                      uVar6 = linfo.li_offset_size;
                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
                      if (end == pDVar37) {
                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);
                        warn(pcVar9);
                        goto LAB_0005c9e0;
                      }
                      if (dVar30 == 1) {
                        if (dVar31 == 8) {
                          local_a4[(int)local_9c] = pDVar37;
                        }
                        else if (dVar31 == 0x1f) {
                          if (linfo.li_offset_size < 9) {
                            if ((DWARF2_Internal_LineInfo *)
                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {
LAB_0005c92c:
                              if (uVar6 - 1 < 8) goto LAB_0005c934;
                            }
                            else {
LAB_0005c920:
                              if (pDVar37 < end) {
                                uVar6 = (int)end - (int)pDVar37;
                                goto LAB_0005c92c;
                              }
                            }
                          }
                          else {
                            pcVar9 = (char *)dcngettext(0,
                                                  "internal error: attempt to read %d byte of data in to %d sized variable"
                                                  ,
                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"
                                                  ,linfo.li_offset_size,5);
                            error(pcVar9,uVar6,8);
                            if (end <= &pDVar37->li_version) goto LAB_0005c920;
                            uVar6 = 8;
LAB_0005c934:
                            (*byte_get)((uchar *)pDVar37,uVar6);
                          }
                          puVar11 = fetch_indirect_line_string
                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));
                          local_a4[(int)local_9c] = puVar11;
                        }
                      }
                      pDVar37 = (DWARF2_Internal_LineInfo *)
                                read_and_display_attr_value
                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,
                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,
                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');
                      local_94 = (uchar *)((int)local_94 + 1);
                    } while ((uchar *)local_ac != local_94);
                  }
                  if (end == pDVar37) {
LAB_0005c9e0:
                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);
                    warn(pcVar9);
                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);
                    if (local_60 < end) goto LAB_0005ca09;
                    goto LAB_0005ccd9;
                  }
                  bVar23 = 0xfffffffe < local_9c;
                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);
                  local_98 = local_98 + (uint)bVar23;
                } while (local_b4._4_4_ != local_98 ||
                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);
              }
              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);
              if (local_60 < end) {
LAB_0005ca09:
                iVar13 = 1;
LAB_0005ca0e:
                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);
                local_7c = (uint)eVar32 & 0xff;
                pDVar22 = local_60;
                if ((eVar32 & 0xff) != 0) {
                  iVar13 = 0;
                  uVar6 = 0;
                  do {
                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);
                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);
                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);
                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
                    bVar23 = 0xfffffffe < uVar6;
                    uVar6 = uVar6 + 1;
                    iVar13 = iVar13 + (uint)bVar23;
                  } while (iVar13 != 0 || local_7c != uVar6);
                }
              }
              else {
                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))
                goto LAB_0005ca0e;
LAB_0005ccd9:
                local_7c = 0;
                pDVar22 = local_60;
              }
              pDVar37 = end;
              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);
              local_94 = (uchar *)dVar30;
              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              if (end != pDVar22) {
                pcVar9 = (char *)((int)local_94 << 4);
                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);
                local_b4 = dVar29;
                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;
                puVar17 = (undefined4 *)((int)local_b8 + 4);
                local_78 = (uchar *)0x0;
                do {
                  if (local_7c != 0) {
                    local_8c = 0;
                    local_9c = local_60;
                    do {
                      pDVar37 = end;
                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);
                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);
                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);
                      uVar6 = linfo.li_offset_size;
                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
                      if (end == pDVar22) {
                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);
                        warn(pcVar9);
                        goto LAB_0005cd30;
                      }
                      if (dVar29 == 1) {
                        if (dVar30 == 8) {
                          puVar17[-1] = pDVar22;
                        }
                        else if (dVar30 == 0x1f) {
                          if (linfo.li_offset_size < 9) {
                            if ((DWARF2_Internal_LineInfo *)
                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {
LAB_0005cc49:
                              if (uVar6 - 1 < 8) goto LAB_0005cc55;
                            }
                            else {
LAB_0005cc3d:
                              if (pDVar22 < end) {
                                uVar6 = (int)end - (int)pDVar22;
                                goto LAB_0005cc49;
                              }
                            }
                          }
                          else {
                            pcVar9 = (char *)dcngettext(0,
                                                  "internal error: attempt to read %d byte of data in to %d sized variable"
                                                  ,
                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"
                                                  ,linfo.li_offset_size,5);
                            error(pcVar9,uVar6,8);
                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;
                            uVar6 = 8;
LAB_0005cc55:
                            (*byte_get)((uchar *)pDVar22,uVar6);
                          }
                          puVar11 = fetch_indirect_line_string
                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));
                          puVar17[-1] = puVar11;
                        }
                      }
                      else if (dVar29 == 2) {
                        if (dVar30 == 0xb) {
                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {
                            iVar13 = 1;
                          }
                          else if ((end <= pDVar22) ||
                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {
LAB_0005ce4f:
                            *puVar17 = 0;
                            goto LAB_0005cb51;
                          }
                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);
                          *puVar17 = (int)eVar32;
                        }
                        else if (dVar30 == 0xf) {
                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);
                          *puVar17 = (int)dVar29;
                        }
                        else if (dVar30 == 5) {
                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {
                            iVar13 = 2;
                          }
                          else if ((end <= pDVar22) ||
                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))
                          goto LAB_0005ce4f;
                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);
                          *puVar17 = (int)eVar32;
                        }
                      }
LAB_0005cb51:
                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;
                      pcVar9 = (char *)section;
                      pDVar22 = (DWARF2_Internal_LineInfo *)
                                read_and_display_attr_value
                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,
                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,
                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');
                      local_8c = local_8c + 1;
                    } while (local_7c != local_8c);
                  }
                  if (end == pDVar22) {
LAB_0005cd30:
                    pcVar9 = "Corrupt file name list\n";
                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);
                    warn(pcVar5);
                    goto LAB_0005cd50;
                  }
                  local_78 = local_78 + 1;
                  puVar17 = puVar17 + 4;
                } while (local_78 != local_94);
                uVar6 = *(uint *)((int)local_b8 + 4);
                if (uVar6 != 0) goto LAB_0005cdc0;
LAB_0005cd5b:
                uVar21 = *(undefined4 *)local_b8;
                pcVar9 = ".";
LAB_0005cd63:
                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);
                printf(pcVar5,pcVar9,uVar21);
                goto LAB_0005c27f;
              }
              pcVar9 = "Corrupt file name list\n";
            }
LAB_0005c678:
            pcVar9 = (char *)dcgettext(0,pcVar9,5);
            warn(pcVar9);
            dVar29 = CONCAT44(state_machine_regs.address._4_4_,
                              (undefined4)state_machine_regs.address);
            goto LAB_0005adf9;
          }
          local_b4 = 0;
          local_a4 = (undefined4 *)0x0;
          pDVar15 = pDVar22;
          if ((byte)pDVar22->li_length != 0) {
            iVar13 = 0;
            uVar6 = 0;
            do {
              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);
              bVar23 = 0xfffffffe < uVar6;
              uVar6 = uVar6 + 1;
              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);
              iVar13 = iVar13 + (uint)bVar23;
              if (end <= pDVar15) {
                pcVar9 = "directory table ends unexpectedly\n";
                goto LAB_0005c678;
              }
            } while ((byte)pDVar15->li_length != 0);
            local_b4 = CONCAT44(iVar13,uVar6);
            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);
            bVar12 = (byte)pDVar22->li_length;
            puVar17 = local_a4;
            while (bVar12 != 0) {
              *puVar17 = pDVar22;
              puVar17 = puVar17 + 1;
              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);
              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);
              bVar12 = (byte)pDVar22->li_length;
            }
          }
          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);
          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {
            local_94 = (uchar *)0x0;
            __string = pDVar22;
            do {
              sVar8 = strnlen((char *)__string,(int)end - (int)__string);
              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);
              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
              pbVar16 = pbVar16 + bytes_read;
              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
              pbVar16 = pbVar16 + bytes_read;
              pcVar9 = (char *)&bytes_read;
              pDVar37 = end;
              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
              local_94 = local_94 + 1;
              if (end <= __string) {
                pcVar9 = "file table ends unexpectedly\n";
                goto LAB_0005c678;
              }
            } while ((byte)__string->li_length != 0);
            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);
            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);
            puVar17 = (undefined4 *)local_b8;
            while (bVar12 != 0) {
              *puVar17 = pDVar22;
              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);
              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);
              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
              pbVar16 = pbVar16 + bytes_read;
              puVar17[1] = (int)dVar29;
              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);
              pbVar16 = pbVar16 + bytes_read;
              puVar17[2] = (int)dVar29;
              pcVar9 = (char *)&bytes_read;
              pDVar37 = end;
              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);
              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);
              puVar17[3] = (int)dVar29;
              puVar17 = puVar17 + 4;
              bVar12 = (byte)pDVar22->li_length;
            }
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);
            if (local_a4 == (undefined4 *)0x0) {
              uVar21 = *(undefined4 *)local_b8;
              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);
              printf(pcVar9,uVar21);
            }
            else {
LAB_0005cd50:
              uVar6 = *(uint *)((int)local_b8 + 4);
              if (uVar6 == 0) goto LAB_0005cd5b;
LAB_0005cdc0:
              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {
                pcVar9 = "<unknown>";
LAB_0005d3fb:
                pcVar9 = (char *)dcgettext(0,pcVar9,5);
              }
              else {
                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {
                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);
                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);
                  warn(pcVar5,uVar6,pcVar9);
                  pcVar9 = "<corrupt>";
                  goto LAB_0005d3fb;
                }
                pcVar9 = (char *)local_a4[uVar6 - 1];
              }
              uVar21 = *(undefined4 *)local_b8;
              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;
              printf("%s:\n",uVar21);
            }
          }
          else {
            local_94 = (uchar *)0x0;
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);
            local_b8 = (DWARF2_Internal_LineInfo *)0x0;
          }
LAB_0005c27f:
          in_stack_ffffff2c = (uchar *)0x5;
          pcVar9 = (char *)dcgettext(0,
                                     "File name                            Line number    Starting address    View\n"
                                    );
          printf(pcVar9);
          saved_linfo_11206 = (undefined4)linfo.li_length;
          DAT_000b75e4 = linfo.li_length._4_4_;
          DAT_000b75e8._0_2_ = linfo.li_version;
          DAT_000b75e8._2_2_ = linfo._10_2_;
          DAT_000b75ec = (undefined4)linfo.li_prologue_length;
          DAT_000b75f0 = linfo.li_prologue_length._4_4_;
          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;
          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;
          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;
          DAT_000b75f4._3_1_ = linfo._23_1_;
          DAT_000b75f8 = linfo.li_line_base;
          DAT_000b75fc._0_1_ = linfo.li_line_range;
          DAT_000b75fc._1_1_ = linfo.li_opcode_base;
          DAT_000b75fc._2_2_ = linfo._30_2_;
          DAT_000b7600 = linfo.li_offset_size;
          if (pDVar22 < end_of_sequence) {
LAB_0005ab5e:
            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;
            dVar29 = CONCAT44(state_machine_regs.address._4_4_,
                              (undefined4)state_machine_regs.address);
            local_bc = pDVar22;
            linfo.li_length._0_4_ = saved_linfo_11206;
            linfo.li_length._4_4_ = DAT_000b75e4;
            linfo._8_4_ = DAT_000b75e8;
            linfo.li_prologue_length._0_4_ = DAT_000b75ec;
            linfo.li_prologue_length._4_4_ = DAT_000b75f0;
            linfo._20_4_ = DAT_000b75f4;
            linfo.li_line_base = DAT_000b75f8;
            linfo._28_4_ = DAT_000b75fc;
            linfo.li_offset_size = DAT_000b7600;
LAB_0005ad11:
            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);
            bVar12 = (byte)local_bc->li_length;
            uVar6 = (uint)bVar12;
            if (linfo.li_opcode_base <= bVar12) {
              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;
              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);
              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;
              if (linfo.li_max_ops_per_insn != '\x01') {
                uVar7 = state_machine_regs.op_index + uVar20;
                uVar20 = uVar7 / linfo.li_max_ops_per_insn;
                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);
                state_machine_regs.op_index = local_88;
              }
              uVar20 = uVar20 * (linfo._20_4_ & 0xff);
              state_machine_regs.address = dVar29 + uVar20;
              if (uVar20 != 0) {
                state_machine_regs.view = 0;
              }
              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;
              local_bc = pDVar22;
              goto joined_r0x0005af93;
            }
            state_machine_regs.address = dVar29;
            switch(uVar6) {
            case 0:
              in_stack_ffffff2c = (uchar *)0x0;
              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;
              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);
              puVar11 = (uchar *)dVar29;
              if (puVar11 == (uchar *)0x0) {
                in_stack_ffffff2c = (uchar *)0x5;
                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");
                warn(pcVar9);
                local_bc = pDVar22;
                dVar29 = state_machine_regs.address;
                break;
              }
              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);
              local_bc = (DWARF2_Internal_LineInfo *)
                         (puVar11 + bytes_read + (int)&pDVar22->li_length);
              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);
              uVar6 = (uint)*pbVar16;
              switch(uVar6) {
              default:
                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);
                printf(pcVar9,uVar6);
                in_stack_ffffff2c = puVar11;
              case 1:
              case 4:
              case 0x16:
                dVar29 = state_machine_regs.address;
                if (uVar6 != 1) break;
                uVar6 = 0xffffffff;
                goto joined_r0x0005af93;
              case 2:
                puVar11 = puVar11 + -1;
                if (puVar11 < (uchar *)0x9) {
                  if (local_bc < end) {
LAB_0005b20c:
                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;
                  }
                  else {
LAB_0005b1f6:
                    if (pDVar22 < end) {
                      puVar11 = (uchar *)((int)end - (int)pDVar22);
                      goto LAB_0005b20c;
                    }
                  }
                  dVar29 = 0;
                }
                else {
                  pcVar9 = (char *)dcngettext(0,
                                              "internal error: attempt to read %d byte of data in to %d sized variable"
                                              ,
                                              "internal error: attempt to read %d bytes of data in to %d sized variable"
                                              ,puVar11,5);
                  in_stack_ffffff2c = (uchar *)0x8;
                  error(pcVar9,puVar11);
                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;
                  puVar11 = (uchar *)0x8;
LAB_0005b218:
                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);
                }
                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
                state_machine_regs.view = 0;
                break;
              case 3:
                local_94 = local_94 + 1;
                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);
                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;
                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);
                *puVar17 = pDVar22;
                sVar8 = strlen((char *)pDVar22);
                pbVar16 = pbVar16 + sVar8 + 2;
                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);
                puVar17[1] = (int)dVar29;
                pbVar16 = pbVar16 + bytes_read;
                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);
                puVar17[2] = (int)dVar29;
                in_stack_ffffff2c = (uchar *)0x0;
                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;
                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);
                puVar17[3] = (int)dVar29;
                dVar29 = state_machine_regs.address;
              }
              break;
            case 1:
            case 10:
            case 0xb:
              goto _L2741;
            case 2:
              in_stack_ffffff2c = (uchar *)0x0;
              pDVar37 = end;
              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);
              iVar13 = (int)dVar29;
              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              if (linfo.li_max_ops_per_insn != '\x01') {
                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /
                         (uint)linfo.li_max_ops_per_insn;
                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %
                                (uint)linfo.li_max_ops_per_insn);
                uVar6 = linfo._20_4_ & 0xff;
                goto LAB_0005ae5c;
              }
              uVar6 = linfo._20_4_ & 0xff;
LAB_0005c370:
              uVar6 = iVar13 * uVar6;
              dVar30 = state_machine_regs.address + uVar6;
              dVar29 = state_machine_regs.address + uVar6;
              if (uVar6 == 0) break;
LAB_0005ae7e:
              state_machine_regs.view = 0;
              dVar29 = dVar30;
              break;
            case 3:
              in_stack_ffffff2c = (uchar *)0x1;
              pDVar37 = end;
              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);
              state_machine_regs.line = state_machine_regs.line + (int)dVar29;
              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              dVar29 = state_machine_regs.address;
              break;
            case 4:
              in_stack_ffffff2c = (uchar *)0x0;
              puVar35 = &bytes_read;
              pDVar37 = end;
              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);
              uVar6 = (uint)dVar29;
              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              puVar11 = (uchar *)(uVar6 - 1);
              state_machine_regs.file = uVar6;
              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {
                pcVar9 = "\n [Use file table entry %d]\n";
              }
              else {
                if (puVar11 < local_94) {
                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);
                  puVar11 = (uchar *)puVar17[1];
                  if (puVar11 == (uchar *)0x0) {
                    printf("\n./%s:[++]\n",*puVar17);
                    dVar29 = state_machine_regs.address;
                  }
                  else if ((local_a4 == (undefined4 *)0x0) ||
                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {
                    uVar21 = *puVar17;
                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)
                    ;
                    printf(pcVar9,uVar21);
                    in_stack_ffffff2c = puVar11;
                    dVar29 = state_machine_regs.address;
                  }
                  else {
                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {
                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);
                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"
                                                 ,5);
                      warn(pcVar5,puVar11,pcVar9);
                      pcVar9 = "\n <over large directory table entry %u>\n";
                      goto LAB_0005b184;
                    }
                    in_stack_ffffff2c = (uchar *)*puVar17;
                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);
                    dVar29 = state_machine_regs.address;
                  }
                  break;
                }
                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);
                warn(pcVar9,uVar6,local_94);
                pcVar9 = "\n <over large file table index %u>";
              }
              goto LAB_0005b184;
            case 5:
              in_stack_ffffff2c = (uchar *)0x0;
              pDVar37 = end;
              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);
              state_machine_regs.column = (uint)dVar29;
              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              dVar29 = state_machine_regs.address;
              break;
            case 6:
              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);
              local_bc = pDVar22;
              break;
            case 7:
              state_machine_regs.basic_block = 1;
              local_bc = pDVar22;
              break;
            case 8:
              uVar6 = linfo._20_4_ & 0xff;
              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /
                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));
              local_bc = pDVar22;
              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;
              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /
                       (uint)linfo.li_max_ops_per_insn;
              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %
                              (uint)linfo.li_max_ops_per_insn);
LAB_0005ae5c:
              uVar6 = uVar6 * uVar20;
              state_machine_regs.op_index = uVar14;
              dVar30 = state_machine_regs.address + uVar6;
              dVar29 = state_machine_regs.address + uVar6;
              if (uVar6 != 0) goto LAB_0005ae7e;
              break;
            case 9:
              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);
              if (local_bc < end) {
                iVar13 = 2;
LAB_0005c4cd:
                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);
                local_84 = (uint)eVar32;
              }
              else {
                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))
                goto LAB_0005c4cd;
                local_84 = 0;
              }
              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
              dVar29 = state_machine_regs.address + local_84;
              if (end_of_sequence <= local_bc) goto LAB_0005adb0;
              goto LAB_0005ad11;
            case 0xc:
              pDVar37 = end;
              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);
              puVar11 = (uchar *)dVar29;
              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);
              pcVar9 = "  Set ISA to %lu\n";
LAB_0005b184:
              in_stack_ffffff2c = (uchar *)0x5;
              pcVar9 = (char *)dcgettext(0,pcVar9);
              printf(pcVar9,puVar11);
              dVar29 = state_machine_regs.address;
              break;
            default:
              in_stack_ffffff2c = (uchar *)0x5;
              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");
              printf(pcVar9,uVar6);
              local_bc = pDVar22;
              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {
                puVar35 = &bytes_read;
                for (; uVar20 != 1; uVar20 = uVar20 - 1) {
                  puVar36 = puVar35;
                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);
                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);
                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);
                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);
                }
                pDVar37 = end;
                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);
                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);
                in_stack_ffffff2c = "";
                printf("0x%s%s",pcVar9);
                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);
              }
              putc(10,*(FILE **)local_9c);
              pDVar22 = local_bc;
_L2741:
              local_bc = pDVar22;
              dVar29 = state_machine_regs.address;
              if (uVar6 == 1) {
joined_r0x0005af93:
                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {
                  pcVar9 = "<unknown>";
LAB_0005afab:
                  pcVar9 = (char *)dcgettext(0,pcVar9,5);
                }
                else {
                  puVar11 = (uchar *)(state_machine_regs.file - 1);
                  if (local_94 <= puVar11) {
                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);
                    warn(pcVar9,puVar11);
                    pcVar9 = "<corrupt>";
                    goto LAB_0005afab;
                  }
                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);
                }
                sVar8 = strlen(pcVar9);
                if (sVar8 < 0x24) {
                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);
                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);
                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);
                  dVar29 = state_machine_regs.address;
LAB_0005ac8b:
                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);
                  state_machine_regs.address._0_4_ = (undefined4)dVar29;
                  if (linfo.li_max_ops_per_insn == '\x01') {
                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,
                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);
                    state_machine_regs.address = dVar29;
                  }
                  else {
                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,
                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,
                           (uint)state_machine_regs.op_index);
                    state_machine_regs.address = dVar29;
                  }
                }
                else {
                  if (do_wide == 0) {
                    pcVar5 = (char *)xmalloc(0x24);
                    in_stack_ffffff2c = (uchar *)0x24;
                    pcVar9 = pcVar9 + (sVar8 - 0x23);
                  }
                  else {
                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);
                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);
                  }
                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);
                  dVar29 = state_machine_regs.address;
                  if (do_wide == 0) goto LAB_0005ac8b;
                  if (linfo.li_max_ops_per_insn == '\x01') {
                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,
                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);
                  }
                  else {
                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,
                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,
                           (uint)state_machine_regs.op_index);
                  }
                }
                if (state_machine_regs.view == 0) {
                  putc(10,*(FILE **)local_9c);
                }
                else {
                  printf("  %6u\n",state_machine_regs.view);
                }
                state_machine_regs.view = state_machine_regs.view + 1;
                if (uVar6 == 0xffffffff) {
                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;
                  state_machine_regs.address._0_4_ = 0;
                  state_machine_regs.address._4_4_ = 0;
                  state_machine_regs.view = 0;
                  state_machine_regs.op_index = '\0';
                  state_machine_regs.end_sequence = '\0';
                  state_machine_regs.file = 1;
                  state_machine_regs.line = 1;
                  state_machine_regs.column = 0;
                  state_machine_regs.basic_block = 0;
                  state_machine_regs.last_file_entry = 0;
                  putc(10,*(FILE **)local_9c);
                }
                free(pcVar5);
                dVar29 = state_machine_regs.address;
              }
            }
            if (end_of_sequence <= local_bc) goto LAB_0005adb0;
            goto LAB_0005ad11;
          }
        }
        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);
        local_bc = pDVar22;
        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;
        linfo.li_length._0_4_ = saved_linfo_11206;
        linfo.li_length._4_4_ = DAT_000b75e4;
        linfo._8_4_ = DAT_000b75e8;
        linfo.li_prologue_length._0_4_ = DAT_000b75ec;
        linfo.li_prologue_length._4_4_ = DAT_000b75f0;
        linfo._20_4_ = DAT_000b75f4;
        linfo.li_line_base = DAT_000b75f8;
        linfo._28_4_ = DAT_000b75fc;
        linfo.li_offset_size = DAT_000b7600;
LAB_0005adb0:
        state_machine_regs.address = dVar29;
        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {
          free(local_b8);
        }
        if (local_a4 != (undefined4 *)0x0) {
          free(local_a4);
        }
        putc(10,*(FILE **)local_9c);
        uVar25 = end < local_bc;
        uVar27 = end == local_bc;
        dVar29 = state_machine_regs.address;
        if (end <= local_bc) {
LAB_0005adf9:
          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);
          state_machine_regs.address._0_4_ = (undefined4)dVar29;
          return local_58;
        }
      } while( true );
    }
  }
  else if ((do_debug_lines & 2U) != 0) {
    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,
              (dwarf_section *)PTR_stdout_000b3fd8);
  }
LAB_0005a988:
  uVar6 = 1;
  dVar29 = state_machine_regs.address;
LAB_0005a98d:
  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);
  state_machine_regs.address._0_4_ = (undefined4)dVar29;
  return uVar6;
}



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

undefined4 FUN_0005a8e0(int param_1)

{
  code *pcVar1;
  undefined *puVar2;
  undefined1 *puVar3;
  ushort uVar4;
  byte *pbVar5;
  char *pcVar6;
  byte bVar13;
  uint uVar7;
  size_t sVar8;
  char *pcVar9;
  int iVar10;
  undefined4 uVar11;
  undefined4 uVar12;
  int iVar14;
  size_t __n;
  byte *pbVar15;
  byte *pbVar16;
  undefined4 *puVar17;
  uint uVar18;
  uint uVar19;
  byte *pbVar20;
  bool bVar21;
  bool bVar22;
  undefined1 uVar23;
  bool bVar24;
  undefined1 uVar25;
  byte bVar26;
  ulonglong uVar27;
  longlong lVar28;
  longlong lVar29;
  longlong lVar30;
  undefined *puVar31;
  undefined1 *puVar32;
  byte *local_bc;
  byte *local_b8;
  byte *local_b4;
  uint local_b0;
  undefined4 *local_ac;
  undefined4 *local_a4;
  byte *local_9c;
  int local_98;
  uint local_94;
  int local_90;
  uint local_8c;
  undefined1 local_88;
  uint uStack_84;
  uint local_7c;
  uint local_78;
  char *local_6c;
  byte *local_60;
  undefined4 local_58;
  undefined1 *local_54 [3];
  byte *local_48;
  int local_44;
  undefined4 local_40;
  undefined4 local_3c;
  uint local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  int local_28;
  undefined4 local_24;
  uint local_20 [3];
  undefined4 uStack_14;
  
  bVar26 = 0;
  uStack_14 = 0x5a8e9;
  local_bc = *(byte **)(param_1 + 0x10);
  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);
  if (DAT_000b9db0 == 0) {
    DAT_000b9db0 = 1;
  }
  else if ((DAT_000b9db0 & 1) == 0) {
    if ((DAT_000b9db0 & 2) == 0) {
      return 1;
    }
    FUN_0004eb80();
    uVar23 = local_bc < pbVar5;
    uVar25 = local_bc == pbVar5;
    if (!(bool)uVar23) {
      return 1;
    }
    local_58 = 1;
    goto LAB_0005a9d0;
  }
  uVar11 = *(undefined4 *)(param_1 + 8);
  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {
    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);
    printf(pcVar6,uVar11);
  }
  else {
    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)
    ;
    printf(pcVar6,uVar11,iVar14);
  }
  puVar2 = PTR_stdout_000b3fd8;
  bVar21 = local_bc < pbVar5;
  bVar24 = local_bc == pbVar5;
  local_b4 = local_bc;
  if (bVar21) {
LAB_0005b368:
    do {
      iVar14 = 0xc;
      pbVar20 = *(byte **)(param_1 + 8);
      pbVar16 = (byte *)".debug_line.";
      do {
        if (iVar14 == 0) break;
        iVar14 = iVar14 + -1;
        bVar21 = *pbVar20 < *pbVar16;
        bVar24 = *pbVar20 == *pbVar16;
        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
      } while (bVar24);
      bVar22 = false;
      bVar21 = (!bVar21 && !bVar24) == bVar21;
      if (bVar21) {
        iVar14 = 0x10;
        pbVar20 = *(byte **)(param_1 + 8);
        pbVar16 = (byte *)".debug_line.dwo";
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          bVar22 = *pbVar20 < *pbVar16;
          bVar21 = *pbVar20 == *pbVar16;
          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
        } while (bVar21);
        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;
        local_20[0] = DAT_000b7640;
        local_40 = DAT_000b7620;
        local_3c = DAT_000b7624;
        local_38 = DAT_000b7628;
        local_34 = DAT_000b762c;
        local_30 = DAT_000b7630;
        local_2c = DAT_000b7634;
        local_28 = DAT_000b7638;
        local_24 = DAT_000b763c;
        if ((char)DAT_000b763c == '\0') {
          pcVar6 = 
          "Partial .debug_line. section encountered without a prior full .debug_line section\n";
          local_48 = pbVar5;
LAB_0005d6a3:
          uVar11 = dcgettext(0,pcVar6,5);
          warn(uVar11);
          goto LAB_0005d6b6;
        }
        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;
        DAT_000b9d00 = 0;
        DAT_000b9d04 = 0;
        DAT_000b9d08 = 0;
        DAT_000b9d0c = 1;
        DAT_000b9d10 = (undefined1 *)0x1;
        DAT_000b9d14 = 0;
        DAT_000b9d1c = 0;
        DAT_000b9d20 = 0;
        DAT_000b9d24 = 0;
        local_94 = 0;
        local_48 = pbVar5;
      }
      else {
LAB_0005bd30:
        local_94 = FUN_0004d730(&local_40,&local_48);
        if (local_94 == 0) {
LAB_0005d6b6:
          uVar23 = 0;
          uVar25 = (DAT_000b9db0 & 2) == 0;
          if ((bool)uVar25) {
            return 0;
          }
          FUN_0004eb80();
          local_58 = 0;
          goto LAB_0005a9d0;
        }
        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);
        printf(pcVar6,(int)local_b4 - (int)local_bc);
        uVar11 = local_40;
        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);
        printf(pcVar6,uVar11);
        uVar19 = local_38 & 0xffff;
        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);
        printf(pcVar6,uVar19);
        uVar11 = local_34;
        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);
        printf(pcVar6,uVar11);
        uVar19 = local_2c & 0xff;
        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);
        printf(pcVar6,uVar19);
        if (3 < (ushort)local_38) {
          uVar19 = local_2c >> 8;
          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);
          printf(pcVar6,uVar19 & 0xff);
        }
        uVar19 = local_2c >> 0x10;
        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);
        printf(pcVar6,uVar19 & 0xff);
        iVar14 = local_28;
        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);
        printf(pcVar6,iVar14);
        uVar19 = local_24 & 0xff;
        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);
        printf(pcVar6,uVar19);
        uVar19 = local_24 >> 8;
        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);
        printf(pcVar6,uVar19 & 0xff);
        if ((byte)local_24 == '\0') {
          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
          warn(uVar11);
          local_24 = CONCAT31(local_24._1_3_,1);
        }
        DAT_000b9d18 = local_2c >> 0x10 & 0xff;
        DAT_000b9d00 = 0;
        DAT_000b9d04 = 0;
        DAT_000b9d08 = 0;
        DAT_000b9d0c = 1;
        DAT_000b9d10 = (undefined1 *)0x1;
        DAT_000b9d14 = 0;
        DAT_000b9d1c = 0;
        DAT_000b9d20 = 0;
        DAT_000b9d24 = 0;
        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {
          pcVar6 = "Line Base extends beyond end of section\n";
          goto LAB_0005d6a3;
        }
        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);
        printf(pcVar6);
        uVar19 = (uint)local_24._1_1_;
        if (1 < local_24._1_1_) {
          iVar14 = 1;
          do {
            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);
            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",
                                        uVar19,5);
            iVar10 = iVar14 + 1;
            printf(pcVar6,iVar14,uVar19);
            uVar19 = local_24 >> 8 & 0xff;
            iVar14 = iVar10;
          } while (iVar10 < (int)uVar19);
        }
        pbVar20 = (byte *)(local_94 + -1 + uVar19);
        if ((ushort)local_38 < 5) {
          if (*pbVar20 == 0) {
            local_b4 = pbVar20 + 1;
            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);
            printf(pcVar6);
            if (pbVar20[1] == 0) goto LAB_0005c013;
LAB_0005d01c:
            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);
            printf(pcVar6,(int)local_b4 - (int)local_bc);
            pbVar16 = (byte *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);
            printf(pcVar6);
            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {
              pbVar20 = local_b4;
              while( true ) {
                DAT_000b9d24 = DAT_000b9d24 + 1;
                printf("  %d\t",DAT_000b9d24,pbVar16);
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                local_b4 = pbVar20 + sVar8 + 1;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                pbVar16 = pbVar20;
                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);
                if (pbVar5 == local_b4) break;
                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;
              }
              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);
              warn(uVar11);
              local_b4 = pbVar5;
            }
          }
          else {
            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);
            printf(pcVar6,(int)pbVar20 - (int)local_bc);
            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {
              iVar14 = 0;
              do {
                iVar14 = iVar14 + 1;
                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                pbVar20 = pbVar20 + sVar8 + 1;
                if (pbVar5 <= pbVar20) break;
              } while (*pbVar20 != 0);
            }
            if (pbVar5 + -1 <= pbVar20) break;
            local_b4 = pbVar20 + 1;
            if (pbVar20[1] != 0) goto LAB_0005d01c;
LAB_0005c013:
            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);
            printf(pcVar6);
          }
LAB_0005c031:
          local_b4 = local_b4 + 1;
        }
        else {
          FUN_0004e130();
          uVar11 = dcgettext(0,"Directory",5);
          FUN_0005a380(&local_38,local_20,param_1,uVar11);
          uVar11 = dcgettext(0,"File name",5);
          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);
        }
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        DAT_000b7620 = local_40;
        DAT_000b7624 = local_3c;
        DAT_000b7628 = local_38;
        DAT_000b762c = local_34;
        DAT_000b7630 = local_30;
        DAT_000b7634 = local_2c;
        DAT_000b7638 = local_28;
        DAT_000b763c = local_24;
        DAT_000b7640 = local_20[0];
      }
      local_40 = DAT_000b7620;
      local_3c = DAT_000b7624;
      local_38 = DAT_000b7628;
      local_34 = DAT_000b762c;
      local_30 = DAT_000b7630;
      local_2c = DAT_000b7634;
      local_28 = DAT_000b7638;
      local_24 = DAT_000b763c;
      local_20[0] = DAT_000b7640;
      if (local_b4 < local_48) {
        puVar32 = (undefined1 *)0x5;
        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);
        printf(pcVar6);
        pbVar20 = local_b4;
        if (local_b4 < local_48) {
LAB_0005b6b6:
          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);
          iVar14 = DAT_000b9d04;
          uVar19 = DAT_000b9d00;
          local_b4 = pbVar20 + 1;
          bVar13 = *pbVar20;
          if (local_24._1_1_ <= bVar13) {
            bVar13 = bVar13 - local_24._1_1_;
            uVar7 = local_2c & 0xff;
            uVar18 = (uint)(bVar13 / (byte)local_24);
            if (local_2c._1_1_ == '\x01') {
              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;
              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);
              DAT_000b9d00 = (uint)lVar29;
              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
              if ((int)lVar28 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";
              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)
              ;
              puVar32 = &DAT_0007bc55;
            }
            else {
              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,
                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,
                                    local_54);
              puVar32 = local_54[0];
              uVar7 = iVar10 * uVar7;
              DAT_000b9d00 = uVar7 + uVar19;
              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);
              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);
              if (uVar7 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar9 = (char *)dcgettext(0,
                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",
                                         5);
              pcVar6 = "";
            }
            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);
            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;
            DAT_000b9d10 = puVar32;
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);
            printf(pcVar6,uVar11,puVar32);
            if (DAT_000b9d08 == 0) goto LAB_0005bb80;
code_r0x0005b679:
            iVar14 = DAT_000b9d08;
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0," (view %u)\n");
            printf(pcVar6,iVar14,puVar32);
LAB_0005b698:
            DAT_000b9d08 = DAT_000b9d08 + 1;
            goto LAB_0005b6a1;
          }
          switch(bVar13) {
          case 0:
            iVar14 = FUN_000523d0();
            local_b4 = local_b4 + iVar14;
            break;
          case 1:
            puVar31 = &UNK_0009393c;
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);
            printf(pcVar6,puVar31,puVar32);
            if (DAT_000b9d08 != 0) goto code_r0x0005b679;
LAB_0005bb80:
            putc(10,*(FILE **)PTR_stdout_000b3fd8);
            goto LAB_0005b698;
          case 2:
            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            iVar14 = DAT_000b9d04;
            uVar19 = DAT_000b9d00;
            local_b4 = local_b4 + local_44;
            if (local_2c._1_1_ == '\x01') {
              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);
              uVar19 = (uint)lVar28;
              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);
              bVar21 = CARRY4(DAT_000b9d00,uVar19);
              DAT_000b9d00 = DAT_000b9d00 + uVar19;
              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;
              if (iVar14 != 0 || uVar19 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar6 = "  Advance PC by %s to 0x%s%s\n";
              goto code_r0x0005b8b1;
            }
            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);
            puVar3 = local_54[0];
            uVar7 = iVar10 * (local_2c & 0xff);
            DAT_000b9d00 = uVar7 + uVar19;
            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);
            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);
            if (uVar7 != 0) {
              DAT_000b9d08 = 0;
            }
            uVar11 = FUN_0004cb50(0);
            uVar12 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");
            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);
            break;
          case 3:
            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);
            local_b4 = local_b4 + local_44;
            puVar32 = DAT_000b9d10 + iVar14;
            DAT_000b9d10 = puVar32;
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);
            printf(pcVar6,uVar11,puVar32);
            break;
          case 4:
            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");
            printf(pcVar6,uVar11,puVar32);
            DAT_000b9d0c = iVar14;
            break;
          case 5:
            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar12 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");
            printf(pcVar6,uVar12,puVar32);
            DAT_000b9d14 = uVar11;
            break;
          case 6:
            bVar21 = DAT_000b9d18 == 0;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");
            printf(pcVar6,uVar11,puVar32);
            DAT_000b9d18 = (uint)bVar21;
            break;
          case 7:
            pcVar6 = "  Set basic block\n";
            puVar32 = (undefined1 *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");
            printf(pcVar9,pcVar6,puVar32);
            DAT_000b9d1c = 1;
            break;
          case 8:
            if (local_2c._1_1_ == '\0') {
                    /* WARNING: Does not return */
              pcVar1 = (code *)invalidInstructionException();
              (*pcVar1)();
            }
            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /
                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);
            bVar21 = CARRY4(uVar19,DAT_000b9d00);
            DAT_000b9d00 = uVar19 + DAT_000b9d00;
            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;
            if (uVar19 != 0) {
              DAT_000b9d08 = 0;
            }
            uVar11 = FUN_0004cb50(0);
            uVar12 = FUN_0004cb50(0);
            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";
code_r0x0005b8b1:
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,pcVar6);
            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);
            break;
          case 9:
            if (pbVar20 + 3 < pbVar5) {
              iVar14 = 2;
code_r0x0005d4cd:
              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);
            }
            else {
              lVar28 = 0;
              if ((local_b4 < pbVar5) &&
                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))
              goto code_r0x0005d4cd;
            }
            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);
            DAT_000b9d00 = (uint)lVar28;
            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);
            DAT_000b9d20 = DAT_000b9d20 & 0xff00;
            puVar32 = (undefined1 *)FUN_0004cb50(0);
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);
            printf(pcVar6,uVar11,puVar32);
            local_b4 = pbVar20 + 3;
            break;
          case 10:
            pcVar6 = "  Set prologue_end to true\n";
            goto code_r0x0005b70b;
          case 0xb:
            pcVar6 = "  Set epilogue_begin to true\n";
code_r0x0005b70b:
            puVar32 = (undefined1 *)0x5;
            pcVar9 = (char *)dcgettext(0,pcVar6);
            printf(pcVar9,pcVar6,puVar32);
            pbVar20 = local_b4;
            if (local_48 <= local_b4) goto LAB_0005b730;
            goto LAB_0005b6b6;
          case 0xc:
            FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");
            printf(pcVar6,uVar11,puVar32);
            break;
          default:
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");
            printf(pcVar6,(uint)bVar13,puVar32);
            if ((local_94 != 0) &&
               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {
              for (; uVar19 != 1; uVar19 = uVar19 - 1) {
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("0x%s%s",uVar11,&DAT_0007c4b1);
                local_b4 = local_b4 + local_44;
              }
              FUN_0004f990(local_b4,&local_44,0,pbVar5);
              uVar11 = FUN_0004cb50(0);
              puVar32 = &DAT_0007bc55;
              printf("0x%s%s",uVar11,&DAT_0007bc55);
              local_b4 = local_b4 + local_44;
            }
            putc(10,*(FILE **)puVar2);
          }
LAB_0005b6a1:
          pbVar20 = local_b4;
          if (local_48 <= local_b4) goto LAB_0005b730;
          goto LAB_0005b6b6;
        }
LAB_0005b730:
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        bVar21 = pbVar5 < local_b4;
        bVar24 = pbVar5 == local_b4;
        if (pbVar5 <= local_b4) break;
        goto LAB_0005b368;
      }
      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);
      printf(pcVar6);
      bVar21 = pbVar5 < local_b4;
      bVar24 = pbVar5 == local_b4;
    } while (local_b4 < pbVar5);
    uVar23 = 0;
    uVar25 = (DAT_000b9db0 & 2) == 0;
    if (!(bool)uVar25) {
      FUN_0004eb80();
      local_58 = 1;
LAB_0005a9d0:
      do {
        local_6c = ".debug_line.";
        iVar14 = 0xc;
        pbVar20 = *(byte **)(param_1 + 8);
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          uVar23 = *pbVar20 < (byte)*local_6c;
          uVar25 = *pbVar20 == *local_6c;
          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);
        } while ((bool)uVar25);
        bVar21 = false;
        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;
        if (bVar24) {
          iVar14 = 0x10;
          pbVar20 = *(byte **)(param_1 + 8);
          pbVar16 = (byte *)".debug_line.dwo";
          do {
            if (iVar14 == 0) break;
            iVar14 = iVar14 + -1;
            bVar21 = *pbVar20 < *pbVar16;
            bVar24 = *pbVar20 == *pbVar16;
            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
          } while (bVar24);
          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;
          local_20[0] = DAT_000b7600;
          local_40 = DAT_000b75e0;
          local_3c = DAT_000b75e4;
          local_38 = DAT_000b75e8;
          local_34 = DAT_000b75ec;
          local_30 = DAT_000b75f0;
          local_2c = DAT_000b75f4;
          local_28 = DAT_000b75f8;
          local_24 = DAT_000b75fc;
          if ((char)DAT_000b75fc == '\0') {
            local_48 = pbVar5;
            uVar11 = dcgettext(0,
                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"
                               ,5);
            warn(uVar11);
            return 0;
          }
          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;
          DAT_000b9d20 = 0;
          lVar29 = 0;
          DAT_000b9d08 = 0;
          DAT_000b9d0c = 1;
          DAT_000b9d10 = (undefined1 *)0x1;
          DAT_000b9d14 = 0;
          DAT_000b9d1c = 0;
          DAT_000b9d24 = 0;
          lVar28 = 0;
          local_a4 = (undefined4 *)0x0;
          local_94 = 0;
          local_b8 = (byte *)0x0;
          local_90 = 0;
          local_9c = PTR_stdout_000b3fd8;
          local_48 = pbVar5;
          lVar30 = 0;
          if (local_bc < pbVar5) goto LAB_0005ad11;
        }
        else {
LAB_0005c150:
          local_90 = FUN_0004d730(&local_40,&local_48);
          if (local_90 == 0) {
            return 0;
          }
          if ((byte)local_24 == '\0') {
            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
            warn(uVar11);
            local_24 = CONCAT31(local_24._1_3_,1);
          }
          DAT_000b9d18 = local_2c >> 0x10 & 0xff;
          DAT_000b9d00 = 0;
          DAT_000b9d20 = 0;
          uVar19 = local_24 >> 8 & 0xff;
          DAT_000b9d04 = 0;
          pbVar20 = (byte *)(local_90 + -1 + uVar19);
          DAT_000b9d08 = 0;
          DAT_000b9d0c = 1;
          DAT_000b9d10 = (undefined1 *)0x1;
          DAT_000b9d14 = 0;
          DAT_000b9d1c = 0;
          DAT_000b9d24 = 0;
          if (pbVar5 <= pbVar20) {
            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);
            warn(uVar11,uVar19);
            return 0;
          }
          if ((ushort)local_38 < 5) {
            local_b4 = (byte *)0x0;
            local_b0 = 0;
            local_a4 = (undefined4 *)0x0;
            pbVar16 = pbVar20;
            if (*pbVar20 != 0) {
              local_b0 = 0;
              local_b4 = (byte *)0x0;
              do {
                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);
                bVar21 = 0xfffffffe < local_b4;
                local_b4 = (byte *)((int)local_b4 + 1);
                pbVar16 = pbVar16 + sVar8 + 1;
                local_b0 = local_b0 + bVar21;
                if (pbVar5 <= pbVar16) {
                  pcVar6 = "directory table ends unexpectedly\n";
                  goto LAB_0005c678;
                }
              } while (*pbVar16 != 0);
              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);
              bVar13 = *pbVar20;
              puVar17 = local_a4;
              while (bVar13 != 0) {
                *puVar17 = pbVar20;
                puVar17 = puVar17 + 1;
                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);
                pbVar20 = pbVar20 + sVar8 + 1;
                bVar13 = *pbVar20;
              }
            }
            lVar28 = CONCAT44(local_b0,local_b4);
            pbVar20 = pbVar16 + 1;
            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {
              local_94 = 0;
              pbVar15 = pbVar20;
              do {
                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);
                pbVar15 = pbVar15 + sVar8 + 1;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                local_94 = local_94 + 1;
                if (pbVar5 <= pbVar15) {
                  pcVar6 = "file table ends unexpectedly\n";
                  goto LAB_0005c678;
                }
              } while (*pbVar15 != 0);
              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);
              bVar13 = pbVar16[1];
              puVar17 = (undefined4 *)local_b8;
              while (bVar13 != 0) {
                *puVar17 = pbVar20;
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                pbVar20 = pbVar20 + sVar8 + 1;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[1] = uVar11;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[2] = uVar11;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[3] = uVar11;
                puVar17 = puVar17 + 4;
                bVar13 = *pbVar20;
              }
              pbVar16 = pbVar15 + 1;
              if (local_a4 == (undefined4 *)0x0) {
                uVar11 = *(undefined4 *)local_b8;
                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);
                printf(pcVar6,uVar11);
              }
              else {
LAB_0005cd50:
                uVar19 = *(uint *)((int)local_b8 + 4);
                if (uVar19 == 0) goto LAB_0005cd5b;
LAB_0005cdc0:
                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);
                local_b4 = (byte *)lVar28;
                if (lVar28 == 0) {
                  pcVar6 = "<unknown>";
LAB_0005d3fb:
                  pcVar6 = (char *)dcgettext(0,pcVar6,5);
                }
                else {
                  if (local_b0 < (local_b4 < uVar19)) {
                    uVar11 = FUN_0004cb50(0);
                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);
                    warn(uVar12,uVar19,uVar11);
                    pcVar6 = "<corrupt>";
                    goto LAB_0005d3fb;
                  }
                  pcVar6 = (char *)local_a4[uVar19 - 1];
                }
                uVar11 = *(undefined4 *)local_b8;
                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))
                goto LAB_0005cd63;
                printf("%s:\n",uVar11);
              }
            }
            else {
              local_94 = 0;
              pbVar16 = pbVar16 + 2;
              local_b8 = (byte *)0x0;
            }
          }
          else {
            FUN_0004e130();
            pbVar15 = (byte *)(uVar19 + local_90);
            pbVar16 = pbVar15;
            if (pbVar15 < pbVar5) {
              iVar14 = 1;
LAB_0005d415:
              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);
              local_ac = (undefined4 *)(uVar19 & 0xff);
              if (local_ac != (undefined4 *)0x0) {
                iVar14 = 0;
                uVar19 = 0;
                do {
                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  bVar21 = 0xfffffffe < uVar19;
                  uVar19 = uVar19 + 1;
                  iVar14 = iVar14 + (uint)bVar21;
                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);
              }
            }
            else {
              iVar14 = (int)pbVar5 - (int)pbVar20;
              if (iVar14 - 1U < 8) goto LAB_0005d415;
              local_ac = (undefined4 *)0x0;
            }
            local_bc = (byte *)&local_44;
            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);
            pbVar16 = pbVar16 + local_44;
            if (pbVar5 == pbVar16) {
              pcVar6 = "Corrupt directories list\n";
              goto LAB_0005c678;
            }
            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);
            if (lVar28 != 0) {
              local_9c = (byte *)0x0;
              local_98 = 0;
              do {
                if (local_ac != (undefined4 *)0x0) {
                  local_94 = 0;
                  local_b8 = pbVar15;
                  do {
                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);
                    local_b8 = local_b8 + local_44;
                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);
                    uVar19 = local_20[0];
                    local_b8 = local_b8 + local_44;
                    if (pbVar5 == pbVar16) {
                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);
                      warn(uVar11);
                      goto LAB_0005c9e0;
                    }
                    if (lVar29 == 1) {
                      if (lVar30 == 8) {
                        local_a4[(int)local_9c] = pbVar16;
                      }
                      else if (lVar30 == 0x1f) {
                        if (local_20[0] < 9) {
                          if (pbVar16 + local_20[0] < pbVar5) {
LAB_0005c92c:
                            if (uVar19 - 1 < 8) goto LAB_0005c934;
                          }
                          else {
LAB_0005c920:
                            if (pbVar16 < pbVar5) {
                              uVar19 = (int)pbVar5 - (int)pbVar16;
                              goto LAB_0005c92c;
                            }
                          }
                        }
                        else {
                          uVar11 = dcngettext(0,
                                              "internal error: attempt to read %d byte of data in to %d sized variable"
                                              ,
                                              "internal error: attempt to read %d bytes of data in to %d sized variable"
                                              ,local_20[0],5);
                          error(uVar11,uVar19,8);
                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;
                          uVar19 = 8;
LAB_0005c934:
                          (*DAT_000b9dd8)(pbVar16,uVar19);
                        }
                        uVar11 = FUN_0004e690();
                        local_a4[(int)local_9c] = uVar11;
                      }
                    }
                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,
                                                   local_38 & 0xffff,0,1,param_1,0,9);
                    local_94 = local_94 + 1;
                  } while (local_ac != (undefined4 *)local_94);
                }
                if (pbVar5 == pbVar16) {
LAB_0005c9e0:
                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);
                  warn(uVar11);
                  local_60 = pbVar16 + 1;
                  if (local_60 < pbVar5) goto LAB_0005ca09;
                  goto LAB_0005ccd9;
                }
                bVar21 = 0xfffffffe < local_9c;
                local_9c = (byte *)((int)local_9c + 1);
                local_98 = local_98 + (uint)bVar21;
              } while (lVar28 != CONCAT44(local_98,local_9c));
            }
            local_60 = pbVar16 + 1;
            if (local_60 < pbVar5) {
LAB_0005ca09:
              iVar14 = 1;
LAB_0005ca0e:
              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);
              local_7c = local_7c & 0xff;
              pbVar16 = local_60;
              if (local_7c != 0) {
                iVar14 = 0;
                uVar19 = 0;
                do {
                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  bVar21 = 0xfffffffe < uVar19;
                  uVar19 = uVar19 + 1;
                  iVar14 = iVar14 + (uint)bVar21;
                } while (iVar14 != 0 || local_7c != uVar19);
              }
            }
            else {
              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))
              goto LAB_0005ca0e;
LAB_0005ccd9:
              local_7c = 0;
              pbVar16 = local_60;
            }
            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);
            pbVar16 = pbVar16 + local_44;
            if (pbVar5 == pbVar16) {
              pcVar6 = "Corrupt file name list\n";
LAB_0005c678:
              uVar11 = dcgettext(0,pcVar6,5);
              warn(uVar11);
              return local_58;
            }
            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);
            if (local_94 == 0) goto LAB_0005cd50;
            local_ac = (undefined4 *)((int)local_b8 + 4);
            local_78 = 0;
            do {
              if (local_7c != 0) {
                local_8c = 0;
                local_9c = local_60;
                do {
                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);
                  local_9c = local_9c + local_44;
                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);
                  uVar19 = local_20[0];
                  local_9c = local_9c + local_44;
                  if (pbVar5 == pbVar16) {
                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);
                    warn(uVar11);
                    goto LAB_0005cd30;
                  }
                  if (lVar29 == 1) {
                    if (lVar30 == 8) {
                      local_ac[-1] = pbVar16;
                    }
                    else if (lVar30 == 0x1f) {
                      if (local_20[0] < 9) {
                        if (pbVar16 + local_20[0] < pbVar5) {
LAB_0005cc49:
                          if (uVar19 - 1 < 8) goto LAB_0005cc55;
                        }
                        else {
LAB_0005cc3d:
                          if (pbVar16 < pbVar5) {
                            uVar19 = (int)pbVar5 - (int)pbVar16;
                            goto LAB_0005cc49;
                          }
                        }
                      }
                      else {
                        uVar11 = dcngettext(0,
                                            "internal error: attempt to read %d byte of data in to %d sized variable"
                                            ,
                                            "internal error: attempt to read %d bytes of data in to %d sized variable"
                                            ,local_20[0],5);
                        error(uVar11,uVar19,8);
                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;
                        uVar19 = 8;
LAB_0005cc55:
                        (*DAT_000b9dd8)(pbVar16,uVar19);
                      }
                      uVar11 = FUN_0004e690();
                      local_ac[-1] = uVar11;
                    }
                  }
                  else if (lVar29 == 2) {
                    if (lVar30 == 0xb) {
                      if (pbVar16 + 1 < pbVar5) {
                        iVar14 = 1;
                      }
                      else if ((pbVar5 <= pbVar16) ||
                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {
LAB_0005ce4f:
                        *local_ac = 0;
                        goto LAB_0005cb51;
                      }
                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);
                      *local_ac = uVar11;
                    }
                    else if (lVar30 == 0xf) {
                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);
                      *local_ac = uVar11;
                    }
                    else if (lVar30 == 5) {
                      if (pbVar16 + 2 < pbVar5) {
                        iVar14 = 2;
                      }
                      else if ((pbVar5 <= pbVar16) ||
                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))
                      goto LAB_0005ce4f;
                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);
                      *local_ac = uVar11;
                    }
                  }
LAB_0005cb51:
                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,
                                                 local_38 & 0xffff,0,1,param_1,0,9);
                  local_8c = local_8c + 1;
                } while (local_7c != local_8c);
              }
              if (pbVar5 == pbVar16) {
LAB_0005cd30:
                uVar11 = dcgettext(0,"Corrupt file name list\n",5);
                warn(uVar11);
                goto LAB_0005cd50;
              }
              local_78 = local_78 + 1;
              local_ac = local_ac + 4;
            } while (local_78 != local_94);
            uVar19 = *(uint *)((int)local_b8 + 4);
            if (uVar19 != 0) goto LAB_0005cdc0;
LAB_0005cd5b:
            uVar11 = *(undefined4 *)local_b8;
            pcVar6 = ".";
LAB_0005cd63:
            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);
            printf(pcVar9,pcVar6,uVar11);
          }
          pcVar6 = (char *)dcgettext(0,
                                     "File name                            Line number    Starting address    View\n"
                                     ,5);
          printf(pcVar6);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
          DAT_000b75e0 = local_40;
          DAT_000b75e4 = local_3c;
          DAT_000b75e8 = local_38;
          DAT_000b75ec = local_34;
          DAT_000b75f0 = local_30;
          DAT_000b75f4 = local_2c;
          DAT_000b75f8 = local_28;
          DAT_000b75fc = local_24;
          DAT_000b7600 = local_20[0];
          local_bc = pbVar16;
          local_9c = PTR_stdout_000b3fd8;
          lVar30 = lVar29;
          if (pbVar16 < local_48) {
LAB_0005ad11:
            lVar29 = lVar30;
            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);
            local_b4 = (byte *)lVar28;
            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
            DAT_000b9d00 = (uint)lVar29;
            pbVar20 = local_bc + 1;
            bVar13 = *local_bc;
            local_ac = (undefined4 *)(uint)bVar13;
            if (local_24._1_1_ <= bVar13) {
              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;
              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);
              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;
              if (local_2c._1_1_ != 1) {
                uVar7 = (byte)DAT_000b9d20 + uVar19;
                uVar19 = uVar7 / local_2c._1_1_;
                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);
                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);
              }
              uVar19 = uVar19 * (local_2c & 0xff);
              lVar29 = lVar29 + (ulonglong)uVar19;
              if (uVar19 != 0) {
                DAT_000b9d08 = 0;
              }
              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;
              local_bc = pbVar20;
              goto joined_r0x0005af93;
            }
            switch(local_ac) {
            case (undefined4 *)0x0:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);
              if (iVar14 == 0) {
                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);
                warn(uVar11);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                local_bc = pbVar20;
                break;
              }
              pbVar16 = pbVar20 + local_44;
              local_bc = pbVar20 + local_44 + iVar14;
              pbVar20 = pbVar16 + 1;
              uVar19 = (uint)*pbVar16;
              switch(uVar19) {
              default:
                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);
                printf(pcVar6,uVar19,iVar14);
              case 1:
              case 4:
              case 0x16:
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                if (uVar19 != 1) break;
                local_ac = (undefined4 *)0xffffffff;
                goto joined_r0x0005af93;
              case 2:
                uVar19 = iVar14 - 1;
                if (uVar19 < 9) {
                  if (local_bc < pbVar5) {
code_r0x0005b20c:
                    if (uVar19 - 1 < 8) goto code_r0x0005b218;
                  }
                  else {
code_r0x0005b1f6:
                    if (pbVar20 < pbVar5) {
                      uVar19 = (int)pbVar5 - (int)pbVar20;
                      goto code_r0x0005b20c;
                    }
                  }
                  lVar29 = 0;
                }
                else {
                  uVar11 = dcngettext(0,
                                      "internal error: attempt to read %d byte of data in to %d sized variable"
                                      ,
                                      "internal error: attempt to read %d bytes of data in to %d sized variable"
                                      ,uVar19,5);
                  error(uVar11,uVar19,8);
                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;
                  uVar19 = 8;
code_r0x0005b218:
                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);
                }
                DAT_000b9d20 = DAT_000b9d20 & 0xff00;
                DAT_000b9d08 = 0;
                break;
              case 3:
                local_94 = local_94 + 1;
                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);
                DAT_000b9d24 = DAT_000b9d24 + 1;
                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);
                *puVar17 = pbVar20;
                sVar8 = strlen((char *)pbVar20);
                pbVar16 = pbVar16 + sVar8 + 2;
                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);
                puVar17[1] = uVar11;
                pbVar16 = pbVar16 + local_44;
                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);
                puVar17[2] = uVar11;
                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);
                puVar17[3] = uVar11;
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
              break;
            case (undefined4 *)0x1:
            case (undefined4 *)0xa:
            case (undefined4 *)0xb:
              goto code_r0x0005af82;
            case (undefined4 *)0x2:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              local_bc = pbVar20 + local_44;
              if (local_2c._1_1_ != 1) {
                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;
                local_ac._0_1_ =
                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);
                uVar19 = local_2c & 0xff;
                goto code_r0x0005ae5c;
              }
              uVar19 = local_2c & 0xff;
code_r0x0005c370:
              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);
              lVar30 = lVar29;
              if (iVar14 * uVar19 == 0) break;
code_r0x0005ae7e:
              lVar29 = lVar30;
              DAT_000b9d08 = 0;
              break;
            case (undefined4 *)0x3:
              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              DAT_000b9d10 = DAT_000b9d10 + iVar14;
              local_bc = pbVar20 + local_44;
              break;
            case (undefined4 *)0x4:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              local_bc = pbVar20 + local_44;
              uVar19 = iVar14 - 1;
              DAT_000b9d0c = iVar14;
              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {
                pcVar6 = "\n [Use file table entry %d]\n";
              }
              else {
                if (uVar19 < local_94) {
                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);
                  uVar19 = puVar17[1];
                  if (uVar19 == 0) {
                    printf("\n./%s:[++]\n",*puVar17);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {
                    uVar11 = *puVar17;
                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)
                    ;
                    printf(pcVar6,uVar11,uVar19);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  else {
                    if (local_b0 < (local_b4 < uVar19)) {
                      uVar11 = FUN_0004cb50(0);
                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);
                      warn(uVar12,uVar19,uVar11);
                      pcVar6 = "\n <over large directory table entry %u>\n";
                      goto code_r0x0005b184;
                    }
                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  break;
                }
                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);
                warn(uVar11,iVar14,local_94);
                pcVar6 = "\n <over large file table index %u>";
              }
              goto code_r0x0005b184;
            case (undefined4 *)0x5:
              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              local_bc = pbVar20 + local_44;
              break;
            case (undefined4 *)0x6:
              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);
              local_bc = pbVar20;
              break;
            case (undefined4 *)0x7:
              DAT_000b9d1c = 1;
              local_bc = pbVar20;
              break;
            case (undefined4 *)0x8:
              uVar19 = local_2c & 0xff;
              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /
                            (ulonglong)(longlong)(int)(local_24 & 0xff));
              local_bc = pbVar20;
              if (local_2c._1_1_ == 1) goto code_r0x0005c370;
              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;
              local_ac._0_1_ =
                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);
code_r0x0005ae5c:
              uVar19 = uVar19 * uVar7;
              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);
              lVar30 = lVar29 + (ulonglong)uVar19;
              lVar29 = lVar29 + (ulonglong)uVar19;
              if (uVar19 != 0) goto code_r0x0005ae7e;
              break;
            case (undefined4 *)0x9:
              local_bc = local_bc + 3;
              if (local_bc < pbVar5) {
                iVar14 = 2;
code_r0x0005c4cd:
                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
              else {
                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))
                goto code_r0x0005c4cd;
                uStack_84 = 0;
              }
              DAT_000b9d20 = DAT_000b9d20 & 0xff00;
              lVar29 = lVar29 + (ulonglong)uStack_84;
              lVar30 = lVar29;
              if (local_48 <= local_bc) goto LAB_0005adb0;
              goto LAB_0005ad11;
            case (undefined4 *)0xc:
              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              local_bc = pbVar20 + local_44;
              pcVar6 = "  Set ISA to %lu\n";
code_r0x0005b184:
              pcVar6 = (char *)dcgettext(0,pcVar6,5);
              printf(pcVar6,uVar19);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              break;
            default:
              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);
              printf(pcVar6,local_ac);
              local_bc = pbVar20;
              if ((local_90 != 0) &&
                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {
                for (; uVar19 != 1; uVar19 = uVar19 - 1) {
                  FUN_0004f990(local_bc,&local_44,0,pbVar5);
                  uVar11 = FUN_0004cb50(0);
                  printf("0x%s%s",uVar11,&DAT_0007c4b1);
                  local_bc = local_bc + local_44;
                }
                FUN_0004f990(local_bc,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("0x%s%s",uVar11,&DAT_0007bc55);
                local_bc = local_bc + local_44;
              }
              putc(10,*(FILE **)local_9c);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              pbVar20 = local_bc;
code_r0x0005af82:
              local_bc = pbVar20;
              if (local_ac == (undefined4 *)0x1) {
joined_r0x0005af93:
                if (local_b8 == (byte *)0x0) {
                  pcVar6 = "<unknown>";
LAB_0005afab:
                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                  DAT_000b9d00 = (uint)lVar29;
                  pcVar6 = (char *)dcgettext(0,pcVar6,5);
                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                }
                else {
                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                  DAT_000b9d00 = (uint)lVar29;
                  uVar19 = DAT_000b9d0c - 1;
                  if (local_94 <= uVar19) {
                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);
                    warn(uVar11,uVar19);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                    pcVar6 = "<corrupt>";
                    goto LAB_0005afab;
                  }
                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);
                }
                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                DAT_000b9d00 = (uint)lVar29;
                sVar8 = strlen(pcVar6);
                if (sVar8 < 0x24) {
                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);
                  strncpy(pcVar9,pcVar6,sVar8 + 1);
LAB_0005ac8b:
                  if (local_2c._1_1_ == '\x01') {
                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);
                  }
                  else {
                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,
                           (uint)(byte)DAT_000b9d20);
                  }
                }
                else {
                  if (DAT_000b9da4 == 0) {
                    pcVar9 = (char *)FUN_0006b190(0x24);
                    __n = 0x24;
                    pcVar6 = pcVar6 + (sVar8 - 0x23);
                  }
                  else {
                    __n = sVar8 + 1;
                    pcVar9 = (char *)FUN_0006b190(__n);
                  }
                  strncpy(pcVar9,pcVar6,__n);
                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;
                  if (local_2c._1_1_ == '\x01') {
                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);
                  }
                  else {
                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,
                           (uint)(byte)DAT_000b9d20);
                  }
                }
                if (DAT_000b9d08 == 0) {
                  putc(10,*(FILE **)local_9c);
                }
                else {
                  printf("  %6u\n",DAT_000b9d08);
                }
                DAT_000b9d08 = DAT_000b9d08 + 1;
                if (local_ac == (undefined4 *)0xffffffff) {
                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;
                  DAT_000b9d00 = 0;
                  DAT_000b9d04 = 0;
                  DAT_000b9d08 = 0;
                  DAT_000b9d20 = 0;
                  DAT_000b9d0c = 1;
                  DAT_000b9d10 = (undefined1 *)0x1;
                  DAT_000b9d14 = 0;
                  DAT_000b9d1c = 0;
                  DAT_000b9d24 = 0;
                  putc(10,*(FILE **)local_9c);
                }
                free(pcVar9);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
            }
            lVar30 = lVar29;
            if (local_48 <= local_bc) goto LAB_0005adb0;
            goto LAB_0005ad11;
          }
        }
LAB_0005adb0:
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        if (local_b8 != (byte *)0x0) {
          free(local_b8);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
        }
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        if (local_a4 != (undefined4 *)0x0) {
          free(local_a4);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
        }
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        putc(10,*(FILE **)local_9c);
        uVar23 = pbVar5 < local_bc;
        uVar25 = pbVar5 == local_bc;
        if (pbVar5 <= local_bc) {
          return local_58;
        }
      } while( true );
    }
  }
  else if ((DAT_000b9db0 & 2) != 0) {
    FUN_0004eb80();
  }
  return 1;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00013f70
ADD EBX,0x59717
SUB ESP,0xbc
MOV EAX,dword ptr [ESP + 0xd0]
MOV EDI,dword ptr [ESP + 0xd0]
MOV EAX,dword ptr [EAX + 0x10]
LEA ECX,[EBX + 0x5db0]
MOV dword ptr [ESP + 0x10],EAX
ADD EAX,dword ptr [EDI + 0x1c]
MOV dword ptr [ESP + 0xc],EAX
MOV EAX,dword ptr [ECX]
MOV dword ptr [ESP + 0x50],ECX
TEST EAX,EAX
JNZ 0x0005a980
MOV dword ptr [ECX],0x1
MOV EAX,dword ptr [ESP + 0xd0]
MOV ESI,dword ptr [EAX + 0x8]
LEA EAX,[EBX + 0x5d98]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x0005b2f8
MOV EAX,dword ptr [ESP + 0xd0]
MOV EDI,dword ptr [EAX + 0xc]
TEST EDI,EDI
JZ 0x0005b2f8
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc960]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0xc
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x0005b317
TEST AL,0x1
JNZ 0x0005a927
TEST AL,0x2
JNZ 0x0005a9a0
MOV EAX,0x1
ADD ESP,0xbc
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [ESP + 0xd0]
LEA EDX,[EAX + 0xc]
MOV EAX,dword ptr [EAX + 0x8]
CALL 0x0004eb80
MOV EDX,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x10],EDX
JNC 0x0005a988
LEA EAX,[EBX + 0xfffc979c]
MOV dword ptr [ESP + 0x74],0x1
MOV dword ptr [ESP + 0x60],EAX
NOP
MOV EAX,dword ptr [ESP + 0xd0]
MOV EDI,dword ptr [ESP + 0x60]
MOV ECX,0xc
MOV EAX,dword ptr [EAX + 0x8]
MOV ESI,EAX
CMPSB.REPE ES:EDI,ESI
SETA DL
SBB DL,0x0
TEST DL,DL
JNZ 0x0005c150
MOV ESI,EAX
MOV ECX,0x10
LEA EDI,[EBX + 0xfffdf86b]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0005c150
MOV EAX,dword ptr [ESP + 0xc]
MOV EDX,dword ptr [EBX + 0x3600]
MOV dword ptr [ESP + 0x84],EAX
MOV EAX,dword ptr [EBX + 0x35e0]
MOV dword ptr [ESP + 0xac],EDX
MOV dword ptr [ESP + 0x8c],EAX
MOV EAX,dword ptr [EBX + 0x35e4]
MOV dword ptr [ESP + 0x90],EAX
MOV EAX,dword ptr [EBX + 0x35e8]
MOV dword ptr [ESP + 0x94],EAX
MOV EAX,dword ptr [EBX + 0x35ec]
MOV dword ptr [ESP + 0x98],EAX
MOV EAX,dword ptr [EBX + 0x35f0]
MOV dword ptr [ESP + 0x9c],EAX
MOV EAX,dword ptr [EBX + 0x35f4]
MOV dword ptr [ESP + 0xa0],EAX
MOV EAX,dword ptr [EBX + 0x35f8]
MOV dword ptr [ESP + 0xa4],EAX
MOV EAX,dword ptr [EBX + 0x35fc]
MOV dword ptr [ESP + 0xa8],EAX
TEST AL,AL
JZ 0x0005d6f8
MOVZX EAX,byte ptr [ESP + 0xa2]
MOV EBP,dword ptr [ESP + 0x10]
LEA ECX,[0x5d00]
MOV dword ptr [EBX + 0x5d00],0x0
MOV dword ptr [ESP + 0x58],ECX
MOV ECX,dword ptr [ESP + 0xc]
MOV dword ptr [EBX + 0x5d18],EAX
LEA EAX,[0x5d20]
MOV dword ptr [ESP + 0x5c],EAX
XOR EAX,EAX
MOV word ptr [EBX + 0x5d20],AX
MOV EAX,dword ptr [EBX + 0xffffffd8]
MOV dword ptr [EBX + 0x5d04],0x0
MOV dword ptr [EBX + 0x5d08],0x0
MOV dword ptr [EBX + 0x5d0c],0x1
MOV dword ptr [EBX + 0x5d10],0x1
MOV dword ptr [EBX + 0x5d14],0x0
MOV dword ptr [EBX + 0x5d1c],0x0
MOV dword ptr [EBX + 0x5d24],0x0
MOV dword ptr [ESP + 0x18],0x0
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x28],0x0
MOV dword ptr [ESP + 0x38],0x0
MOV dword ptr [ESP + 0x14],0x0
MOV dword ptr [ESP + 0x3c],0x0
MOV dword ptr [ESP + 0x30],EAX
CMP ECX,EBP
JBE 0x0005c32b
LEA EAX,[EBX + 0x5da4]
MOV EDX,dword ptr [ESP + 0x1c]
MOV ESI,EBP
MOV EBP,dword ptr [ESP + 0x58]
MOV dword ptr [ESP + 0x40],EAX
MOV EAX,dword ptr [ESP + 0x18]
MOV EDI,EAX
OR EDI,EDX
MOV dword ptr [ESP + 0x64],EDI
JMP 0x0005ad11
SUB EDX,EAX
MOVZX ECX,byte ptr [ESP + 0xa0]
MOV ESI,dword ptr [EBP + EBX*0x1]
MOVZX EAX,DL
MOVZX EDX,byte ptr [ESP + 0xa1]
MOV EDI,dword ptr [EBP + EBX*0x1 + 0x4]
DIV byte ptr [ESP + 0xa8]
MOV byte ptr [ESP + 0x50],AH
MOVZX EAX,AL
MOV dword ptr [ESP + 0x44],EAX
CMP DL,0x1
JZ 0x0005c100
MOVZX EAX,byte ptr [EBP + EBX*0x1 + 0x20]
ADD EAX,dword ptr [ESP + 0x44]
MOV dword ptr [ESP + 0x44],EDX
XOR EDX,EDX
DIV dword ptr [ESP + 0x44]
IMUL ECX,EAX
MOV dword ptr [ESP + 0x44],EDX
XOR EDX,EDX
MOVZX EAX,byte ptr [ESP + 0x44]
MOV byte ptr [EBP + EBX*0x1 + 0x20],AL
ADD ESI,ECX
ADC EDI,EDX
MOV dword ptr [EBP + EBX*0x1],ESI
MOV dword ptr [EBP + EBX*0x1 + 0x4],EDI
TEST ECX,ECX
JZ 0x0005abfd
MOV dword ptr [EBP + EBX*0x1 + 0x8],0x0
MOVZX EAX,byte ptr [ESP + 0x50]
ADD EAX,dword ptr [ESP + 0xa4]
ADD dword ptr [EBP + EBX*0x1 + 0x10],EAX
MOV ECX,dword ptr [ESP + 0x14]
TEST ECX,ECX
JZ 0x0005afa0
MOV EAX,dword ptr [EBP + EBX*0x1 + 0xc]
LEA ESI,[EAX + -0x1]
CMP ESI,dword ptr [ESP + 0x38]
JNC 0x0005c120
MOV EAX,dword ptr [ESP + 0x14]
SHL ESI,0x4
MOV EDI,dword ptr [EAX + ESI*0x1]
SUB ESP,0xc
PUSH EDI
CALL 0x00013260
ADD ESP,0x10
MOV EDX,EAX
CMP EAX,0x23
JBE 0x0005c0d0
MOV EAX,dword ptr [ESP + 0x40]
MOV ESI,dword ptr [EAX]
TEST ESI,ESI
JZ 0x0005c480
SUB ESP,0xc
ADD EDX,0x1
PUSH EDX
MOV dword ptr [ESP + 0x54],EDX
CALL 0x0006b190
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x48]
MOV ESI,EAX
PUSH EDX
PUSH EDI
PUSH ESI
CALL 0x000132f0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x40]
MOV ECX,dword ptr [EAX]
TEST ECX,ECX
JNZ 0x0005c448
CMP byte ptr [ESP + 0xa1],0x1
MOV EAX,dword ptr [EBP + EBX*0x1]
MOV EDX,dword ptr [EBP + EBX*0x1 + 0x4]
MOV ECX,dword ptr [EBP + EBX*0x1 + 0x10]
JZ 0x0005c428
MOVZX EDI,byte ptr [EBP + EBX*0x1 + 0x20]
SUB ESP,0x8
PUSH EDI
PUSH EDX
PUSH EAX
LEA EAX,[EBX + 0xfffdfac4]
PUSH ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x20
MOV EAX,dword ptr [EBP + EBX*0x1 + 0x8]
TEST EAX,EAX
JZ 0x0005c390
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0xfffdfb05]
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
ADD dword ptr [EBP + EBX*0x1 + 0x8],0x1
CMP dword ptr [ESP + 0x20],-0x1
JZ 0x0005c3b3
SUB ESP,0xc
PUSH ESI
CALL 0x000130a0
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x84]
CMP ECX,dword ptr [ESP + 0x10]
JBE 0x0005adb0
MOV ESI,dword ptr [ESP + 0x10]
LEA EAX,[ESI + 0x1]
MOV dword ptr [ESP + 0x10],EAX
MOVZX EAX,byte ptr [ESI]
MOV EDX,EAX
MOV dword ptr [ESP + 0x20],EAX
MOVZX EAX,byte ptr [ESP + 0xa9]
CMP DL,AL
JNC 0x0005ab88
CMP DL,0xc
JA 0x0005af40
MOV EDI,dword ptr [ESP + 0x20]
MOV EDX,dword ptr [EBX + EDI*0x4 + 0xfffe1110]
ADD EDX,EBX
JMP EDX
MOV EAX,dword ptr [ESP + 0x14]
TEST EAX,EAX
JZ 0x0005adc4
SUB ESP,0xc
PUSH EAX
CALL 0x000130a0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x28]
TEST EAX,EAX
JZ 0x0005add8
SUB ESP,0xc
PUSH EAX
CALL 0x000130a0
ADD ESP,0x10
SUB ESP,0x8
MOV EAX,dword ptr [ESP + 0x38]
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
MOV EDI,dword ptr [ESP + 0x10]
CMP dword ptr [ESP + 0xc],EDI
JA 0x0005a9d0
MOV EAX,dword ptr [ESP + 0x74]
ADD ESP,0xbc
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcd9c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP ESI
POP EDI
MOV EDI,dword ptr [ESP + 0x28]
PUSH EDI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x3c]
TEST EAX,EAX
JNZ 0x0005c4f8
SUB ESP,0x8
MOV EAX,dword ptr [ESP + 0x38]
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
CMP dword ptr [ESP + 0x20],0x1
JNZ 0x0005acfc
MOV ECX,dword ptr [ESP + 0x14]
TEST ECX,ECX
JNZ 0x0005ac19
LEA ESI,[ESI]
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc87d6]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0x10
MOV EDI,EAX
JMP 0x0005ac34
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc9a0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
LEA EDX,[EBX + 0xfffc979c]
MOV EAX,dword ptr [ESP + 0x10]
MOV ECX,dword ptr [EBX + 0xffffffd8]
MOV dword ptr [ESP + 0x60],EDX
MOV EDX,dword ptr [ESP + 0xc]
MOV EBP,EAX
MOV dword ptr [ESP + 0x58],ECX
CMP EAX,EDX
JC 0x0005b368
JMP 0x0005d850
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf8d7]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
CMP dword ptr [ESP + 0xc],EBP
JBE 0x0005b753
MOV EAX,dword ptr [ESP + 0xd0]
MOV EDI,dword ptr [ESP + 0x60]
MOV ECX,0xc
MOV EAX,dword ptr [EAX + 0x8]
MOV ESI,EAX
CMPSB.REPE ES:EDI,ESI
SETA DL
SBB DL,0x0
TEST DL,DL
JNZ 0x0005bd30
MOV ESI,EAX
MOV ECX,0x10
LEA EDI,[EBX + 0xfffdf86b]
CMPSB.REPE ES:EDI,ESI
SETA AL
SBB AL,0x0
TEST AL,AL
JZ 0x0005bd30
MOV EAX,dword ptr [ESP + 0xc]
MOV EDX,dword ptr [EBX + 0x3640]
MOV dword ptr [ESP + 0x84],EAX
MOV EAX,dword ptr [EBX + 0x3620]
MOV dword ptr [ESP + 0xac],EDX
MOV dword ptr [ESP + 0x8c],EAX
MOV EAX,dword ptr [EBX + 0x3624]
MOV dword ptr [ESP + 0x90],EAX
MOV EAX,dword ptr [EBX + 0x3628]
MOV dword ptr [ESP + 0x94],EAX
MOV EAX,dword ptr [EBX + 0x362c]
MOV dword ptr [ESP + 0x98],EAX
MOV EAX,dword ptr [EBX + 0x3630]
MOV dword ptr [ESP + 0x9c],EAX
MOV EAX,dword ptr [EBX + 0x3634]
MOV dword ptr [ESP + 0xa0],EAX
MOV EAX,dword ptr [EBX + 0x3638]
MOV dword ptr [ESP + 0xa4],EAX
MOV EAX,dword ptr [EBX + 0x363c]
MOV dword ptr [ESP + 0xa8],EAX
TEST AL,AL
JZ 0x0005d698
MOVZX EAX,byte ptr [ESP + 0xa2]
XOR ESI,ESI
LEA EDI,[0x5d00]
MOV dword ptr [EBX + 0x5d00],0x0
MOV dword ptr [ESP + 0x14],EDI
MOV dword ptr [EBX + 0x5d04],0x0
MOV dword ptr [EBX + 0x5d08],0x0
MOV dword ptr [EBX + 0x5d0c],0x1
MOV dword ptr [EBX + 0x5d10],0x1
MOV dword ptr [EBX + 0x5d14],0x0
MOV dword ptr [EBX + 0x5d1c],0x0
MOV word ptr [EBX + 0x5d20],SI
MOV dword ptr [EBX + 0x5d24],0x0
MOV dword ptr [ESP + 0x38],0x0
MOV dword ptr [EBX + 0x5d18],EAX
MOV EAX,dword ptr [ESP + 0xc]
CMP EBP,EAX
JNC 0x0005b340
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf8f4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
CMP EBP,dword ptr [ESP + 0x84]
JNC 0x0005d6e8
LEA EAX,[EBX + 0xfffdf90e]
MOV dword ptr [ESP + 0x40],EAX
LEA EAX,[EBX + 0x5dd8]
MOV dword ptr [ESP + 0x54],EAX
JMP 0x0005b6b6
SUB ECX,EAX
MOV EDX,dword ptr [ESP + 0x14]
MOV dword ptr [ESP + 0x2c],0x0
MOVZX EAX,CL
MOV byte ptr [ESP + 0x20],CL
MOVZX EBP,byte ptr [ESP + 0xa0]
MOV word ptr [ESP + 0x44],AX
MOV ECX,dword ptr [EDX + EBX*0x1 + 0x4]
DIV byte ptr [ESP + 0xa8]
MOV EDX,dword ptr [EDX + EBX*0x1]
MOV dword ptr [ESP + 0x34],ECX
MOV dword ptr [ESP + 0x30],EDX
MOVZX ESI,AL
MOVZX EAX,byte ptr [ESP + 0xa1]
MOV dword ptr [ESP + 0x28],ESI
CMP AL,0x1
JZ 0x0005bca8
MOV ECX,dword ptr [ESP + 0x14]
XOR EDI,EDI
MOVZX ESI,byte ptr [ECX + EBX*0x1 + 0x20]
LEA ECX,[ESP + 0x78]
ADD ESI,dword ptr [ESP + 0x28]
ADC EDI,dword ptr [ESP + 0x2c]
SUB ESP,0xc
XOR EDX,EDX
PUSH ECX
PUSH EDX
PUSH EAX
PUSH EDI
PUSH ESI
CALL 0x0006b800
MOV ECX,EBP
ADD ESP,0x20
MOV ESI,dword ptr [ESP + 0x78]
MOVZX EBP,CL
MOV EDI,dword ptr [ESP + 0x14]
XOR ECX,ECX
IMUL EAX,EBP
MOV dword ptr [ESP + 0x3c],EAX
MOV EBP,dword ptr [ESP + 0x3c]
MOV EDX,EAX
MOV EAX,ESI
ADD EDX,dword ptr [ESP + 0x30]
ADC ECX,dword ptr [ESP + 0x34]
MOV byte ptr [EDI + EBX*0x1 + 0x20],AL
MOV dword ptr [EDI + EBX*0x1],EDX
MOV dword ptr [EDI + EBX*0x1 + 0x4],ECX
TEST EBP,EBP
JZ 0x0005b5b5
MOV dword ptr [EDI + EBX*0x1 + 0x8],0x0
SUB ESP,0xc
LEA EAX,[EBX + 0xfffc89c5]
PUSH 0x0
CALL 0x0004cb50
MOV EDX,dword ptr [ESP + 0x38]
MOV ECX,dword ptr [ESP + 0x3c]
MOV dword ptr [ESP],0x0
MOV EDI,EAX
LEA EAX,[EBX + 0xfffda67c]
CALL 0x0004cb50
ADD ESP,0xc
MOV EBP,EAX
LEA EAX,[EBX + 0xfffdccb0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
LEA EDX,[EBX + 0xfffc7c55]
POP ECX
PUSH EDX
PUSH ESI
PUSH EDI
PUSH EBP
MOVZX EDX,byte ptr [ESP + 0x38]
PUSH EDX
PUSH EAX
CALL 0x00013060
ADD ESP,0x20
MOVZX EAX,word ptr [ESP + 0x44]
MOV EBP,dword ptr [ESP + 0x14]
DIV byte ptr [ESP + 0xa8]
MOV ESI,dword ptr [EBP + EBX*0x1 + 0x10]
MOVZX EDX,AH
ADD EDX,dword ptr [ESP + 0xa4]
SUB ESP,0xc
ADD ESI,EDX
MOV ECX,EDX
LEA EAX,[EBX + 0xfffdf850]
MOV dword ptr [EBP + EBX*0x1 + 0x10],ESI
SAR ECX,0x1f
PUSH 0x0
CALL 0x0004cb50
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xfffdf91a]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0xc
PUSH ESI
PUSH EDI
PUSH EAX
CALL 0x00013060
MOV ESI,dword ptr [EBP + EBX*0x1 + 0x8]
ADD ESP,0x10
TEST ESI,ESI
JZ 0x0005bb80
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf930]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x14]
ADD dword ptr [EAX + EBX*0x1 + 0x8],0x1
MOV EAX,dword ptr [ESP + 0x18]
CMP dword ptr [ESP + 0x84],EAX
JBE 0x0005b730
MOV EBP,dword ptr [ESP + 0x18]
SUB ESP,0x8
MOV EAX,EBP
SUB EAX,dword ptr [ESP + 0x18]
PUSH EAX
PUSH dword ptr [ESP + 0x4c]
CALL 0x00013060
LEA EAX,[EBP + 0x1]
MOVZX ECX,byte ptr [EBP]
MOV dword ptr [ESP + 0x28],EAX
MOVZX EAX,byte ptr [ESP + 0xb9]
ADD ESP,0x10
CMP CL,AL
JNC 0x0005b500
CMP CL,0xc
JA 0x0005cf40
MOV EDX,dword ptr [EBX + ECX*0x4 + 0xfffe11a0]
ADD EDX,EBX
JMP EDX
MOV EAX,dword ptr [EBX + 0xffffffd8]
SUB ESP,0x8
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
MOV EBP,dword ptr [ESP + 0x18]
CMP dword ptr [ESP + 0xc],EBP
JA 0x0005b368
MOV EAX,dword ptr [ESP + 0x50]
TEST byte ptr [EAX],0x2
JZ 0x0005a988
MOV EAX,dword ptr [ESP + 0xd0]
LEA EDX,[EAX + 0xc]
MOV EAX,dword ptr [EAX + 0x8]
CALL 0x0004eb80
MOV dword ptr [ESP + 0x74],0x1
JMP 0x0005a9d0
MOV EAX,dword ptr [EBX + 0xffffffd8]
SUB ESP,0x8
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
JMP 0x0005b698
MOV EAX,EBP
MOV ECX,dword ptr [ESP + 0x34]
MOVZX EBP,AL
MOV EAX,ESI
MUL EBP
MOV EDI,EDX
MOV EDX,dword ptr [ESP + 0x30]
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x14]
MOV EBP,EDI
ADD EDX,ESI
ADC ECX,EDI
OR EBP,ESI
MOV dword ptr [EAX + EBX*0x1],EDX
MOV dword ptr [EAX + EBX*0x1 + 0x4],ECX
JZ 0x0005bcde
MOV EAX,dword ptr [ESP + 0x14]
MOV dword ptr [EAX + EBX*0x1 + 0x8],0x0
SUB ESP,0xc
LEA EAX,[EBX + 0xfffc89c5]
PUSH 0x0
CALL 0x0004cb50
MOV EDX,ESI
MOV ECX,EDI
MOV dword ptr [ESP],0x0
MOV EBP,EAX
LEA EAX,[EBX + 0xfffda67c]
CALL 0x0004cb50
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xfffdcc78]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
LEA EDX,[EBX + 0xfffc7c55]
MOV dword ptr [ESP],EDX
PUSH EBP
PUSH ESI
JMP 0x0005b602
SUB ESP,0x8
MOV EDX,EBP
LEA EAX,[ESP + 0x8c]
PUSH EAX
LEA EAX,[ESP + 0x98]
PUSH EAX
MOV ECX,dword ptr [ESP + 0x1c]
MOV EAX,dword ptr [ESP + 0xe0]
CALL 0x0004d730
MOV dword ptr [ESP + 0x48],EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0005d6b6
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc584]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
SUB EBP,dword ptr [ESP + 0x18]
PUSH EBP
PUSH EAX
CALL 0x00013060
MOV ESI,dword ptr [ESP + 0x9c]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdca20]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
MOVZX ESI,word ptr [ESP + 0xa4]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdca44]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
MOV ESI,dword ptr [ESP + 0xa8]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdca68]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
MOVZX ESI,byte ptr [ESP + 0xb0]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdca8c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
CMP word ptr [ESP + 0x94],0x3
JA 0x0005c600
MOVZX ESI,byte ptr [ESP + 0xa2]
LEA EAX,[EBX + 0xfffdcad4]
SUB ESP,0x4
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
MOV ESI,dword ptr [ESP + 0xb4]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdcaf8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
MOVZX ESI,byte ptr [ESP + 0xb8]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdcb1c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
MOVZX ESI,byte ptr [ESP + 0xb9]
ADD ESP,0xc
LEA EAX,[EBX + 0xfffdcb40]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
CMP byte ptr [ESP + 0xa8],0x0
JZ 0x0005c5d0
MOVZX EAX,byte ptr [ESP + 0xa2]
XOR ESI,ESI
LEA EDI,[0x5d00]
MOV dword ptr [EBX + 0x5d00],0x0
MOV dword ptr [ESP + 0x14],EDI
MOV dword ptr [EBX + 0x5d18],EAX
MOVZX EAX,byte ptr [ESP + 0xa9]
MOV dword ptr [EBX + 0x5d04],0x0
ADD EAX,dword ptr [ESP + 0x38]
MOV dword ptr [EBX + 0x5d08],0x0
MOV dword ptr [EBX + 0x5d0c],0x1
MOV dword ptr [EBX + 0x5d10],0x1
MOV dword ptr [EBX + 0x5d14],0x0
MOV dword ptr [EBX + 0x5d1c],0x0
MOV word ptr [EBX + 0x5d20],SI
MOV dword ptr [EBX + 0x5d24],0x0
CMP dword ptr [ESP + 0xc],EAX
JBE 0x0005d810
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf87b]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
MOVZX EAX,byte ptr [ESP + 0xb9]
ADD ESP,0x10
CMP AL,0x1
JBE 0x0005bfc8
LEA EBP,[EBX + 0xfffdf8a0]
LEA EDX,[EBX + 0xfffdf887]
MOV ESI,0x1
MOV dword ptr [ESP + 0x18],EBP
MOV EBP,EDX
LEA ESI,[ESI]
MOV EAX,dword ptr [ESP + 0x38]
SUB ESP,0xc
MOVZX EDI,byte ptr [EAX + ESI*0x1 + -0x1]
PUSH 0x5
PUSH EDI
PUSH EBP
PUSH dword ptr [ESP + 0x30]
PUSH 0x0
CALL 0x00013410
ADD ESP,0x1c
PUSH EDI
PUSH ESI
ADD ESI,0x1
PUSH EAX
CALL 0x00013060
MOVZX EAX,byte ptr [ESP + 0xb9]
ADD ESP,0x10
CMP ESI,EAX
JL 0x0005bf90
CMP word ptr [ESP + 0x94],0x4
MOV ECX,dword ptr [ESP + 0x38]
LEA ESI,[ECX + EAX*0x1 + -0x1]
JA 0x0005c690
CMP byte ptr [ESI],0x0
JNZ 0x0005cf90
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcbc0]
LEA EBP,[ESI + 0x1]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
CMP byte ptr [ESI + 0x1],0x0
JNZ 0x0005d01c
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcc0c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
ADD EBP,0x1
MOV EAX,dword ptr [EBX + 0xffffffd8]
SUB ESP,0x8
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
MOV EAX,dword ptr [ESP + 0x9c]
MOV dword ptr [EBX + 0x3620],EAX
MOV EAX,dword ptr [ESP + 0xa0]
MOV dword ptr [EBX + 0x3624],EAX
MOV EAX,dword ptr [ESP + 0xa4]
MOV dword ptr [EBX + 0x3628],EAX
MOV EAX,dword ptr [ESP + 0xa8]
MOV dword ptr [EBX + 0x362c],EAX
MOV EAX,dword ptr [ESP + 0xac]
MOV dword ptr [EBX + 0x3630],EAX
MOV EAX,dword ptr [ESP + 0xb0]
MOV dword ptr [EBX + 0x3634],EAX
MOV EAX,dword ptr [ESP + 0xb4]
MOV dword ptr [EBX + 0x3638],EAX
MOV EAX,dword ptr [ESP + 0xb8]
MOV dword ptr [EBX + 0x363c],EAX
MOV EAX,dword ptr [ESP + 0xbc]
MOV dword ptr [EBX + 0x3640],EAX
MOV EAX,dword ptr [ESP + 0x94]
ADD ESP,0x10
JMP 0x0005b4ae
SUB ESP,0xc
ADD EDX,0x1
PUSH EDX
MOV dword ptr [ESP + 0x54],EDX
CALL 0x0006b190
ADD ESP,0xc
MOV EDX,dword ptr [ESP + 0x48]
MOV ESI,EAX
PUSH EDX
PUSH EDI
PUSH EAX
CALL 0x000132f0
ADD ESP,0x10
JMP 0x0005ac8b
IMUL EAX,ECX
XOR ECX,ECX
ADD ESI,EAX
ADC EDI,ECX
MOV dword ptr [EBP + EBX*0x1],ESI
MOV dword ptr [EBP + EBX*0x1 + 0x4],EDI
TEST EAX,EAX
JZ 0x0005abfd
JMP 0x0005abf5
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcf18]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EDX
PUSH ESI
PUSH EAX
CALL 0x00066db0
ADD ESP,0xc
LEA EAX,[EBX + 0xfffc2aee]
PUSH 0x5
JMP 0x0005afab
SUB ESP,0x8
LEA EAX,[ESP + 0x8c]
PUSH EAX
LEA EAX,[ESP + 0x98]
PUSH EAX
MOV ECX,dword ptr [ESP + 0x1c]
MOV EDX,dword ptr [ESP + 0x20]
MOV EAX,dword ptr [ESP + 0xe0]
CALL 0x0004d730
MOV dword ptr [ESP + 0x4c],EAX
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0005d716
CMP byte ptr [ESP + 0xa8],0x0
JZ 0x0005c338
MOVZX EAX,byte ptr [ESP + 0xa2]
XOR EBP,EBP
LEA EDI,[0x5d00]
MOV dword ptr [EBX + 0x5d00],0x0
MOV word ptr [EBX + 0x5d20],BP
MOVZX EBP,byte ptr [ESP + 0xa9]
MOV dword ptr [EBX + 0x5d18],EAX
LEA EAX,[0x5d20]
MOV dword ptr [ESP + 0x5c],EAX
MOV EAX,dword ptr [ESP + 0x3c]
MOV dword ptr [ESP + 0x58],EDI
MOV dword ptr [EBX + 0x5d04],0x0
LEA ESI,[EAX + EBP*0x1 + -0x1]
MOV dword ptr [EBX + 0x5d08],0x0
MOV dword ptr [EBX + 0x5d0c],0x1
MOV dword ptr [EBX + 0x5d10],0x1
MOV dword ptr [EBX + 0x5d14],0x0
MOV dword ptr [EBX + 0x5d1c],0x0
MOV dword ptr [EBX + 0x5d24],0x0
CMP dword ptr [ESP + 0xc],ESI
JBE 0x0005d7e8
CMP word ptr [ESP + 0x94],0x4
JA 0x0005c750
CMP byte ptr [ESI],0x0
MOV dword ptr [ESP + 0x18],0x0
MOV dword ptr [ESP + 0x1c],0x0
MOV dword ptr [ESP + 0x28],0x0
JNZ 0x0005c630
LEA EDI,[ESI + 0x1]
CMP dword ptr [ESP + 0xc],EDI
JBE 0x0005c26c
CMP byte ptr [ESI + 0x1],0x0
JNZ 0x0005d1d8
MOV dword ptr [ESP + 0x38],0x0
LEA EBP,[ESI + 0x2]
MOV dword ptr [ESP + 0x14],0x0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdce24]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
MOV EAX,dword ptr [ESP + 0x9c]
MOV ECX,dword ptr [ESP + 0x94]
MOV dword ptr [EBX + 0x35e0],EAX
MOV EAX,dword ptr [ESP + 0xa0]
MOV dword ptr [EBX + 0x35e4],EAX
MOV EAX,dword ptr [ESP + 0xa4]
MOV dword ptr [EBX + 0x35e8],EAX
MOV EAX,dword ptr [ESP + 0xa8]
MOV dword ptr [EBX + 0x35ec],EAX
MOV EAX,dword ptr [ESP + 0xac]
MOV dword ptr [EBX + 0x35f0],EAX
MOV EAX,dword ptr [ESP + 0xb0]
MOV dword ptr [EBX + 0x35f4],EAX
MOV EAX,dword ptr [ESP + 0xb4]
MOV dword ptr [EBX + 0x35f8],EAX
MOV EAX,dword ptr [ESP + 0xb8]
MOV dword ptr [EBX + 0x35fc],EAX
MOV EAX,dword ptr [ESP + 0xbc]
ADD ESP,0x10
MOV dword ptr [EBX + 0x3600],EAX
MOV EAX,dword ptr [EBX + 0xffffffd8]
MOV dword ptr [ESP + 0x30],EAX
CMP ECX,EBP
JA 0x0005ab5e
MOV dword ptr [ESP + 0x10],EBP
JMP 0x0005adb0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcb64]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
MOV byte ptr [ESP + 0xb8],0x1
ADD ESP,0x10
JMP 0x0005c194
SUB ESP,0x8
MOV EAX,dword ptr [ESP + 0x38]
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
ADD dword ptr [EBP + EBX*0x1 + 0x8],0x1
CMP dword ptr [ESP + 0x20],-0x1
JNZ 0x0005acf0
MOVZX EAX,byte ptr [ESP + 0xa2]
XOR EDX,EDX
SUB ESP,0x8
MOV dword ptr [EBP + EBX*0x1],0x0
MOV dword ptr [EBP + EBX*0x1 + 0x4],0x0
MOV dword ptr [EBP + EBX*0x1 + 0x18],EAX
MOV EAX,dword ptr [ESP + 0x64]
MOV dword ptr [EBP + EBX*0x1 + 0x8],0x0
MOV word ptr [EAX + EBX*0x1],DX
MOV EAX,dword ptr [ESP + 0x38]
MOV dword ptr [EBP + EBX*0x1 + 0xc],0x1
MOV dword ptr [EBP + EBX*0x1 + 0x10],0x1
MOV dword ptr [EBP + EBX*0x1 + 0x14],0x0
MOV dword ptr [EBP + EBX*0x1 + 0x1c],0x0
MOV dword ptr [EBP + EBX*0x1 + 0x24],0x0
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
JMP 0x0005acf0
SUB ESP,0xc
PUSH EDX
PUSH EAX
LEA EAX,[EBX + 0xfffdfaaf]
PUSH ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x20
JMP 0x0005acc1
CMP byte ptr [ESP + 0xa1],0x1
MOV EAX,dword ptr [EBP + EBX*0x1]
MOV EDX,dword ptr [EBP + EBX*0x1 + 0x4]
MOV ECX,dword ptr [EBP + EBX*0x1 + 0x10]
JZ 0x0005c4a8
MOVZX EDI,byte ptr [EBP + EBX*0x1 + 0x20]
SUB ESP,0x8
PUSH EDI
PUSH EDX
PUSH EAX
LEA EAX,[EBX + 0xfffdfaef]
PUSH ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x20
JMP 0x0005acc1
MOV dword ptr [ESP + 0x44],EDX
SUB ESP,0xc
PUSH 0x24
CALL 0x0006b190
ADD ESP,0xc
PUSH 0x24
MOV EDX,dword ptr [ESP + 0x4c]
MOV ESI,EAX
LEA EAX,[EDI + EDX*0x1 + -0x23]
PUSH EAX
JMP 0x0005ac74
SUB ESP,0xc
PUSH EDX
PUSH EAX
LEA EAX,[EBX + 0xfffdfadd]
PUSH ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x20
JMP 0x0005acc1
MOVZX EDI,byte ptr [EAX + EDI*0x1 + -0x1]
TEST EDI,EDI
JZ 0x0005af6f
LEA EAX,[EBX + 0xfffdfa04]
LEA ESI,[ESP + 0x88]
MOV dword ptr [ESP + 0x44],EAX
LEA EAX,[EBX + 0xfffc89c5]
MOV dword ptr [ESP + 0x50],EAX
LEA EAX,[EBX + 0xfffc84b1]
MOV dword ptr [ESP + 0x54],EAX
JMP 0x0005c576
PUSH dword ptr [ESP + 0xc]
SUB EDI,0x1
PUSH 0x0
PUSH ESI
PUSH dword ptr [ESP + 0x1c]
CALL 0x0004f990
MOV dword ptr [ESP],0x0
MOV ECX,EDX
MOV EDX,EAX
MOV EAX,dword ptr [ESP + 0x60]
CALL 0x0004cb50
ADD ESP,0xc
PUSH dword ptr [ESP + 0x58]
PUSH EAX
PUSH dword ptr [ESP + 0x50]
CALL 0x00013060
MOV EDX,dword ptr [ESP + 0x98]
ADD dword ptr [ESP + 0x20],EDX
ADD ESP,0x10
CMP EDI,0x1
JNZ 0x0005c530
PUSH dword ptr [ESP + 0xc]
PUSH 0x0
PUSH ESI
MOV EDI,dword ptr [ESP + 0x1c]
PUSH EDI
CALL 0x0004f990
MOV dword ptr [ESP],0x0
MOV ECX,EDX
MOV EDX,EAX
LEA EAX,[EBX + 0xfffc89c5]
CALL 0x0004cb50
ADD ESP,0xc
LEA EDX,[EBX + 0xfffc7c55]
PUSH EDX
PUSH EAX
PUSH dword ptr [ESP + 0x50]
CALL 0x00013060
MOV EAX,dword ptr [ESP + 0x98]
ADD EDI,EAX
MOV dword ptr [ESP + 0x20],EDI
ADD ESP,0x10
JMP 0x0005af6f
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcb64]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
MOV byte ptr [ESP + 0xb8],0x1
ADD ESP,0x10
JMP 0x0005bec4
MOVZX ESI,byte ptr [ESP + 0xa1]
LEA EAX,[EBX + 0xfffdcab0]
SUB ESP,0x4
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x0005be24
MOV dword ptr [ESP + 0x10],ESI
MOV EBP,ESI
XOR EDI,EDI
XOR ESI,ESI
JMP 0x0005c64a
CMP byte ptr [EBP],0x0
JZ 0x0005d390
SUB ESP,0x8
MOV EAX,dword ptr [ESP + 0x14]
SUB EAX,EBP
PUSH EAX
PUSH EBP
CALL 0x00013310
ADD ESP,0x10
ADD ESI,0x1
LEA EBP,[EBP + EAX*0x1 + 0x1]
ADC EDI,0x0
CMP dword ptr [ESP + 0xc],EBP
JA 0x0005c640
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcf3c]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
JMP 0x0005adf9
MOV EDX,dword ptr [ESP + 0xd4]
MOV EAX,0xb
CALL 0x0004e130
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdf8b8]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
PUSH EAX
MOV EAX,ESI
PUSH dword ptr [ESP + 0xe4]
LEA EBP,[ESP + 0xc4]
PUSH EBP
LEA EDI,[ESP + 0xb0]
PUSH EDI
MOV ECX,dword ptr [ESP + 0x2c]
MOV EDX,dword ptr [ESP + 0x30]
CALL 0x0005a380
ADD ESP,0x1c
MOV ESI,EAX
LEA EAX,[EBX + 0xfffdf8c2]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
PUSH EAX
MOV EAX,ESI
PUSH dword ptr [ESP + 0xe4]
PUSH EBP
PUSH EDI
MOV ECX,dword ptr [ESP + 0x2c]
MOV EDX,dword ptr [ESP + 0x30]
CALL 0x0005a380
ADD ESP,0x20
MOV EBP,EAX
JMP 0x0005c034
MOV EDX,dword ptr [ESP + 0xd4]
MOV EAX,0xb
CALL 0x0004e130
MOV EAX,dword ptr [ESP + 0xc]
ADD EBP,dword ptr [ESP + 0x3c]
MOV dword ptr [ESP + 0x50],EBP
CMP EAX,EBP
JA 0x0005d410
SUB EAX,ESI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x0005d415
LEA EAX,[ESP + 0x88]
MOV dword ptr [ESP + 0x20],0x0
MOV EBP,dword ptr [ESP + 0x50]
MOV dword ptr [ESP + 0x10],EAX
MOV EDI,dword ptr [ESP + 0xc]
PUSH EDI
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
MOV dword ptr [ESP + 0x28],EAX
MOV dword ptr [ESP + 0x2c],EDX
ADD ESP,0x10
CMP EDI,EBP
JZ 0x0005d830
SUB ESP,0xc
MOV ESI,dword ptr [ESP + 0x24]
MOV EDI,dword ptr [ESP + 0x28]
MOV EAX,ESI
SHL EAX,0x2
PUSH EAX
CALL 0x0006b190
MOV EDX,EDI
MOV dword ptr [ESP + 0x38],EAX
ADD ESP,0x10
OR EDX,ESI
JZ 0x0005ccb2
LEA EAX,[EBX + 0x5dd8]
MOV dword ptr [ESP + 0x30],0x0
MOV ESI,EBP
MOV dword ptr [ESP + 0x34],0x0
MOV EBP,dword ptr [ESP + 0xc]
MOV dword ptr [ESP + 0x64],EAX
LEA ESI,[ESI]
MOV ECX,dword ptr [ESP + 0x20]
TEST ECX,ECX
JZ 0x0005cc80
MOV EAX,dword ptr [ESP + 0x50]
MOV EDX,dword ptr [ESP + 0x28]
MOV dword ptr [ESP + 0x38],0x0
MOV dword ptr [ESP + 0x14],EAX
MOV EAX,dword ptr [ESP + 0x30]
LEA EAX,[EDX + EAX*0x4]
MOV dword ptr [ESP + 0x44],EAX
JMP 0x0005c890
PUSH 0x9
XOR EDX,EDX
PUSH 0x0
PUSH dword ptr [ESP + 0xd8]
PUSH 0x1
PUSH 0x0
MOVZX EAX,word ptr [ESP + 0xa8]
PUSH EAX
XOR EAX,EAX
PUSH EDX
PUSH ECX
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH EBP
PUSH ESI
PUSH 0x0
PUSH 0x0
MOV EDX,dword ptr [ESP + 0x80]
CALL 0x000530b0
ADD dword ptr [ESP + 0x78],0x1
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x78]
ADD ESP,0x40
CMP dword ptr [ESP + 0x20],EAX
JZ 0x0005cc80
PUSH EBP
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH dword ptr [ESP + 0x20]
CALL 0x0004f990
MOV ECX,dword ptr [ESP + 0x24]
ADD ECX,dword ptr [ESP + 0x98]
MOV dword ptr [ESP + 0x64],EDX
MOV EDI,EAX
PUSH EBP
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH ECX
MOV dword ptr [ESP + 0x34],ECX
CALL 0x0004f990
MOV ECX,dword ptr [ESP + 0x34]
ADD ECX,dword ptr [ESP + 0xa8]
MOV dword ptr [ESP + 0x60],EAX
MOV dword ptr [ESP + 0x34],ECX
ADD ESP,0x20
CMP EBP,ESI
JZ 0x0005c9c0
MOV EAX,dword ptr [ESP + 0x54]
XOR EDI,0x1
MOV ECX,dword ptr [ESP + 0xac]
OR EAX,EDI
JNZ 0x0005c840
MOV EDI,dword ptr [ESP + 0x40]
MOV EAX,EDI
XOR EAX,0x8
OR EAX,EDX
JZ 0x0005c9a0
MOV EAX,EDI
XOR EAX,0x1f
OR EDX,EAX
JNZ 0x0005c840
CMP ECX,0x8
JA 0x0005c960
LEA EAX,[ESI + ECX*0x1]
CMP EBP,EAX
JA 0x0005c92c
CMP EBP,ESI
JBE 0x0005c9b0
MOV ECX,EBP
SUB ECX,ESI
LEA EAX,[ECX + -0x1]
CMP EAX,0x7
JA 0x0005c9b0
SUB ESP,0x8
PUSH ECX
PUSH ESI
MOV EAX,dword ptr [ESP + 0x74]
CALL dword ptr [EAX]
ADD ESP,0x10
CALL 0x0004e690
MOV EDI,dword ptr [ESP + 0x44]
MOV ECX,dword ptr [ESP + 0xac]
MOV dword ptr [EDI],EAX
JMP 0x0005c840
SUB ESP,0xc
LEA EAX,[EBX + 0xfffdafd4]
PUSH 0x5
PUSH ECX
MOV dword ptr [ESP + 0x68],ECX
PUSH EAX
LEA EAX,[EBX + 0xfffdb020]
PUSH EAX
PUSH 0x0
CALL 0x00013410
ADD ESP,0x1c
PUSH 0x8
MOV ECX,dword ptr [ESP + 0x5c]
PUSH ECX
PUSH EAX
CALL 0x00066870
LEA EAX,[ESI + 0x8]
ADD ESP,0x10
CMP EBP,EAX
JBE 0x0005c920
MOV ECX,0x8
JMP 0x0005c934
MOV EAX,dword ptr [ESP + 0x44]
MOV dword ptr [EAX],ESI
JMP 0x0005c840
XOR EAX,EAX
XOR EDX,EDX
JMP 0x0005c942
SUB ESP,0x4
MOV EBP,ESI
LEA ESI,[EBX + 0xfffdfa0b]
PUSH 0x5
PUSH ESI
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
SUB ESP,0x4
PUSH 0x5
PUSH ESI
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
LEA EAX,[EBP + 0x1]
MOV dword ptr [ESP + 0x7c],EAX
ADD ESP,0x10
CMP dword ptr [ESP + 0xc],EAX
JBE 0x0005ccd9
MOV EAX,0x1
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x5dd8]
PUSH EBP
CALL dword ptr [EAX]
MOV EBP,dword ptr [ESP + 0x7c]
ADD ESP,0x10
AND EAX,0xff
MOV dword ptr [ESP + 0x50],EAX
JZ 0x0005ca7b
XOR ESI,ESI
XOR EDI,EDI
LEA ESI,[ESI]
PUSH dword ptr [ESP + 0xc]
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
PUSH dword ptr [ESP + 0x1c]
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0xa8]
ADD ESI,0x1
ADC EDI,0x0
ADD ESP,0x20
MOV EAX,dword ptr [ESP + 0x50]
MOV EDX,EDI
XOR EAX,ESI
OR EDX,EAX
JNZ 0x0005ca38
MOV EDI,dword ptr [ESP + 0xc]
PUSH EDI
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
MOV dword ptr [ESP + 0x80],EAX
MOV dword ptr [ESP + 0x48],EAX
ADD ESP,0x10
CMP EDI,EBP
JZ 0x0005d840
SUB ESP,0x8
MOV EDI,dword ptr [ESP + 0x78]
MOV EAX,EDI
SHL EAX,0x4
PUSH EAX
PUSH 0x1
CALL 0x0006b1d0
MOV dword ptr [ESP + 0x24],EAX
ADD ESP,0x10
TEST EDI,EDI
JZ 0x0005cd50
LEA EDI,[EAX + 0x4]
MOV dword ptr [ESP + 0x54],0x0
MOV ESI,EBP
MOV EBP,dword ptr [ESP + 0xc]
MOV dword ptr [ESP + 0x20],EDI
LEA ESI,[ESI]
MOV EDI,dword ptr [ESP + 0x50]
TEST EDI,EDI
JZ 0x0005cd90
MOV EAX,dword ptr [ESP + 0x6c]
MOV dword ptr [ESP + 0x40],0x0
MOV dword ptr [ESP + 0x30],EAX
LEA EAX,[EBX + 0x5dd8]
MOV dword ptr [ESP + 0x68],EAX
JMP 0x0005cba7
XOR EDI,0x2
OR ECX,EDI
JNZ 0x0005cb4a
MOV ECX,dword ptr [ESP + 0x44]
MOV EAX,ECX
XOR EAX,0xb
OR EAX,EDX
JZ 0x0005cef0
MOV EAX,ECX
XOR EAX,0xf
OR EAX,EDX
JZ 0x0005ced0
MOV EAX,ECX
XOR EAX,0x5
OR EDX,EAX
JZ 0x0005ce38
MOV EDI,dword ptr [ESP + 0xac]
PUSH 0x9
XOR EDX,EDX
PUSH 0x0
PUSH dword ptr [ESP + 0xd8]
PUSH 0x1
PUSH 0x0
MOVZX EAX,word ptr [ESP + 0xa8]
PUSH EAX
XOR EAX,EAX
PUSH EDX
PUSH EDI
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH 0x0
PUSH EBP
PUSH ESI
PUSH 0x0
PUSH 0x0
MOV EDX,dword ptr [ESP + 0x84]
CALL 0x000530b0
ADD dword ptr [ESP + 0x80],0x1
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x80]
ADD ESP,0x40
CMP dword ptr [ESP + 0x50],EAX
JZ 0x0005cd90
PUSH EBP
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH dword ptr [ESP + 0x3c]
CALL 0x0004f990
MOV ECX,dword ptr [ESP + 0x40]
ADD ECX,dword ptr [ESP + 0x98]
MOV dword ptr [ESP + 0x74],EDX
MOV EDI,EAX
PUSH EBP
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH ECX
MOV dword ptr [ESP + 0x50],ECX
CALL 0x0004f990
MOV ECX,dword ptr [ESP + 0x50]
ADD ECX,dword ptr [ESP + 0xa8]
MOV dword ptr [ESP + 0x64],EAX
MOV dword ptr [ESP + 0x50],ECX
ADD ESP,0x20
CMP EBP,ESI
JZ 0x0005cd10
MOV EAX,EDI
MOV ECX,dword ptr [ESP + 0x64]
XOR EAX,0x1
OR EAX,ECX
JNZ 0x0005cb18
MOV ECX,dword ptr [ESP + 0x44]
MOV EDI,dword ptr [ESP + 0xac]
MOV EAX,ECX
XOR EAX,0x8
OR EAX,EDX
JZ 0x0005ccf0
MOV EAX,ECX
XOR EAX,0x1f
OR EDX,EAX
JNZ 0x0005cb51
CMP EDI,0x8
JA 0x0005ce90
LEA EAX,[ESI + EDI*0x1]
CMP EBP,EAX
JA 0x0005cc49
CMP EBP,ESI
JBE 0x0005cd00
MOV EDI,EBP
SUB EDI,ESI
LEA EAX,[EDI + -0x1]
CMP EAX,0x7
JA 0x0005cd00
SUB ESP,0x8
PUSH EDI
PUSH ESI
MOV EAX,dword ptr [ESP + 0x78]
CALL dword ptr [EAX]
ADD ESP,0x10
CALL 0x0004e690
MOV EDI,dword ptr [ESP + 0x20]
MOV dword ptr [EDI + -0x4],EAX
MOV EDI,dword ptr [ESP + 0xac]
JMP 0x0005cb51
CMP EBP,ESI
JZ 0x0005d881
ADD dword ptr [ESP + 0x30],0x1
MOV EDI,dword ptr [ESP + 0x1c]
ADC dword ptr [ESP + 0x34],0x0
MOV ECX,dword ptr [ESP + 0x34]
MOV EDX,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ESP + 0x18]
XOR EDI,ECX
XOR EAX,EDX
MOV EDX,EDI
OR EDX,EAX
JNZ 0x0005c810
MOV EBP,ESI
LEA EAX,[EBP + 0x1]
MOV ECX,EAX
MOV dword ptr [ESP + 0x6c],EAX
MOV EAX,dword ptr [ESP + 0xc]
CMP EAX,ECX
JA 0x0005ca09
CMP EAX,EBP
JBE 0x0005ccd9
SUB EAX,EBP
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x0005ca0e
MOV EBP,dword ptr [ESP + 0x6c]
MOV dword ptr [ESP + 0x50],0x0
JMP 0x0005ca7b
MOV EAX,dword ptr [ESP + 0x20]
MOV dword ptr [EAX + -0x4],ESI
JMP 0x0005cb51
XOR EAX,EAX
XOR EDX,EDX
JMP 0x0005cc63
SUB ESP,0x4
MOV EBP,ESI
LEA ESI,[EBX + 0xfffdfa25]
PUSH 0x5
PUSH ESI
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
SUB ESP,0x4
PUSH 0x5
PUSH ESI
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
LEA ESI,[ESI]
NOP
MOV EAX,dword ptr [ESP + 0x14]
MOV ESI,dword ptr [EAX + 0x4]
TEST ESI,ESI
JNZ 0x0005cdc0
MOV EDI,dword ptr [EAX]
LEA ESI,[EBX + 0xfffc97a7]
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfa46]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0xc
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x0005c27f
CMP EBP,ESI
JZ 0x0005d874
ADD dword ptr [ESP + 0x54],0x1
MOV EAX,dword ptr [ESP + 0x54]
ADD dword ptr [ESP + 0x20],0x10
CMP EAX,dword ptr [ESP + 0x70]
JNZ 0x0005cae8
MOV EAX,dword ptr [ESP + 0x14]
MOV EBP,ESI
MOV ESI,dword ptr [EAX + 0x4]
TEST ESI,ESI
JZ 0x0005cd5b
LEA ESI,[ESI]
MOV EDX,dword ptr [ESP + 0x18]
MOV ECX,dword ptr [ESP + 0x1c]
MOV EAX,EDX
MOV EDX,ECX
OR EDX,EAX
JZ 0x0005d3f0
MOV ECX,dword ptr [ESP + 0x1c]
CMP dword ptr [ESP + 0x18],ESI
MOV EDX,0x0
SBB ECX,EDX
JC 0x0005d5c8
MOV EAX,dword ptr [ESP + 0x28]
MOV ESI,dword ptr [EAX + ESI*0x4 + -0x4]
MOV EAX,dword ptr [ESP + 0x14]
MOV EDI,dword ptr [EAX]
LEA EAX,[EBX + 0x5da4]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JNZ 0x0005cd63
SUB ESP,0xc
PUSH ESI
CALL 0x00013260
ADD ESP,0x10
CMP EAX,0x4b
JBE 0x0005cd63
SUB ESP,0x8
LEA EAX,[EBX + 0xfffdfa41]
PUSH EDI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x0005c27f
LEA EAX,[ESI + 0x2]
CMP EBP,EAX
JA 0x0005ce60
CMP EBP,ESI
JBE 0x0005ce4f
MOV EAX,EBP
SUB EAX,ESI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JBE 0x0005ce65
MOV EAX,dword ptr [ESP + 0x20]
MOV dword ptr [EAX],0x0
JMP 0x0005cb4a
MOV EAX,0x2
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x5dd8]
PUSH ESI
CALL dword ptr [EAX]
MOV EDI,dword ptr [ESP + 0x30]
MOV dword ptr [EDI],EAX
MOV EDI,dword ptr [ESP + 0xbc]
ADD ESP,0x10
JMP 0x0005cb51
SUB ESP,0xc
LEA EAX,[EBX + 0xfffdafd4]
PUSH 0x5
PUSH EDI
PUSH EAX
LEA EAX,[EBX + 0xfffdb020]
PUSH EAX
PUSH 0x0
CALL 0x00013410
ADD ESP,0x1c
PUSH 0x8
PUSH EDI
PUSH EAX
CALL 0x00066870
LEA EAX,[ESI + 0x8]
ADD ESP,0x10
CMP EBP,EAX
JBE 0x0005cc3d
MOV EDI,0x8
JMP 0x0005cc55
PUSH EBP
PUSH 0x0
PUSH 0x0
PUSH ESI
CALL 0x0004f990
MOV ECX,dword ptr [ESP + 0x30]
MOV dword ptr [ECX],EAX
MOV EDI,dword ptr [ESP + 0xbc]
ADD ESP,0x10
JMP 0x0005cb51
LEA EAX,[ESI + 0x1]
CMP EBP,EAX
JA 0x0005cf18
CMP EBP,ESI
JBE 0x0005ce4f
MOV EAX,EBP
SUB EAX,ESI
LEA EDX,[EAX + -0x1]
CMP EDX,0x7
JA 0x0005ce4f
JMP 0x0005cf1d
MOV EAX,0x1
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x5dd8]
PUSH ESI
CALL dword ptr [EAX]
MOV ECX,dword ptr [ESP + 0x30]
MOV dword ptr [ECX],EAX
MOV EDI,dword ptr [ESP + 0xbc]
ADD ESP,0x10
JMP 0x0005cb51
MOV byte ptr [ESP + 0x20],CL
LEA EAX,[EBX + 0xfffdcd9c]
SUB ESP,0x4
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
MOVZX ESI,byte ptr [ESP + 0x28]
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x38]
TEST EAX,EAX
JNZ 0x0005d4f0
SUB ESP,0x8
MOV EAX,dword ptr [ESP + 0x60]
PUSH dword ptr [EAX]
PUSH 0xa
CALL 0x00013360
ADD ESP,0x10
JMP 0x0005b6a1
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcbe4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
MOV EDX,ESI
POP ECX
SUB EDX,dword ptr [ESP + 0x18]
PUSH EDX
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
CMP dword ptr [ESP + 0xc],ESI
JBE 0x0005d000
CMP byte ptr [ESI],0x0
JZ 0x0005d000
LEA EAX,[EBX + 0xfffdf8cc]
XOR EDI,EDI
MOV dword ptr [ESP + 0x18],EAX
JMP 0x0005cfd5
CMP byte ptr [ESI],0x0
JZ 0x0005d000
MOV EBP,dword ptr [ESP + 0xc]
ADD EDI,0x1
PUSH ESI
SUB EBP,ESI
PUSH EBP
PUSH EDI
PUSH dword ptr [ESP + 0x24]
CALL 0x00013060
POP ECX
POP EAX
PUSH EBP
PUSH ESI
CALL 0x00013310
ADD ESP,0x10
LEA ESI,[ESI + EAX*0x1 + 0x1]
CMP dword ptr [ESP + 0xc],ESI
JA 0x0005cfd0
MOV EAX,dword ptr [ESP + 0xc]
SUB EAX,0x1
CMP ESI,EAX
JNC 0x0005b753
CMP byte ptr [ESI + 0x1],0x0
LEA EBP,[ESI + 0x1]
JZ 0x0005c013
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcc30]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDI
POP EDX
MOV EDX,EBP
SUB EDX,dword ptr [ESP + 0x18]
PUSH EDX
PUSH EAX
CALL 0x00013060
ADD ESP,0xc
LEA EAX,[EBX + 0xfffded84]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00013060
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0xc]
CMP EAX,EBP
JBE 0x0005c031
CMP byte ptr [ESI + 0x1],0x0
JZ 0x0005c031
LEA ECX,[EBX + 0xfffdeda1]
LEA EDI,[EBX + 0xfffc93a9]
MOV dword ptr [ESP + 0x3c],ECX
LEA ECX,[ESP + 0x88]
MOV dword ptr [ESP + 0x20],ECX
LEA ECX,[EBX + 0xfffdf8d1]
MOV dword ptr [ESP + 0x40],ECX
LEA ECX,[EBX + 0xfffda67c]
MOV dword ptr [ESP + 0x28],EDI
MOV EDI,EAX
MOV dword ptr [ESP + 0x18],ECX
JMP 0x0005d0c1
MOV EBP,ESI
JBE 0x0005c031
CMP byte ptr [ESI],0x0
JZ 0x0005c031
MOV ECX,dword ptr [ESP + 0x14]
SUB ESP,0x8
MOV EAX,dword ptr [ECX + EBX*0x1 + 0x24]
MOV dword ptr [ESP + 0x38],EAX
ADD EAX,0x1
MOV dword ptr [ECX + EBX*0x1 + 0x24],EAX
PUSH EAX
PUSH dword ptr [ESP + 0x48]
CALL 0x00013060
MOV EAX,EDI
POP EDX
POP ECX
SUB EAX,EBP
MOV dword ptr [ESP + 0x38],EAX
PUSH EAX
PUSH EBP
CALL 0x00013310
ADD ESP,0x10
LEA ESI,[EBP + EAX*0x1 + 0x1]
PUSH EDI
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH ESI
CALL 0x0004f990
MOV dword ptr [ESP],0x0
MOV ECX,EDX
MOV EDX,EAX
MOV EAX,dword ptr [ESP + 0x28]
CALL 0x0004cb50
POP EDX
POP ECX
PUSH EAX
PUSH dword ptr [ESP + 0x34]
CALL 0x00013060
ADD ESI,dword ptr [ESP + 0x98]
PUSH EDI
PUSH 0x0
PUSH dword ptr [ESP + 0x38]
PUSH ESI
CALL 0x0004f990
ADD ESP,0x14
PUSH 0x0
MOV ECX,EDX
MOV EDX,EAX
MOV EAX,dword ptr [ESP + 0x28]
CALL 0x0004cb50
POP EDX
POP ECX
PUSH EAX
PUSH dword ptr [ESP + 0x34]
CALL 0x00013060
ADD ESI,dword ptr [ESP + 0x98]
PUSH EDI
PUSH 0x0
PUSH dword ptr [ESP + 0x38]
PUSH ESI
CALL 0x0004f990
ADD ESP,0x14
PUSH 0x0
MOV ECX,EDX
MOV EDX,EAX
MOV EAX,dword ptr [ESP + 0x28]
CALL 0x0004cb50
POP EDX
POP ECX
PUSH EAX
PUSH dword ptr [ESP + 0x34]
CALL 0x00013060
ADD ESI,dword ptr [ESP + 0x98]
ADD ESP,0xc
PUSH EBP
PUSH dword ptr [ESP + 0x38]
PUSH dword ptr [ESP + 0x4c]
CALL 0x00013060
ADD ESP,0x10
CMP EDI,ESI
JNZ 0x0005d0b0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcc58]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
MOV EBP,dword ptr [ESP + 0xc]
JMP 0x0005c031
LEA EAX,[ESP + 0x88]
MOV EBP,EDI
MOV dword ptr [ESP + 0x14],ESI
MOV ESI,dword ptr [ESP + 0xc]
MOV dword ptr [ESP + 0x20],EDI
MOV EDI,EAX
MOV dword ptr [ESP + 0x38],0x0
MOV dword ptr [ESP + 0x10],EAX
JMP 0x0005d20a
CMP byte ptr [EBP],0x0
JZ 0x0005d2b0
MOV EAX,ESI
SUB ESP,0x8
SUB EAX,EBP
PUSH EAX
PUSH EBP
CALL 0x00013310
ADD ESP,0x10
LEA EBP,[EBP + EAX*0x1 + 0x1]
PUSH ESI
PUSH 0x0
PUSH EDI
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
PUSH ESI
PUSH 0x0
PUSH EDI
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0xa8]
ADD ESP,0x20
PUSH ESI
PUSH 0x0
PUSH EDI
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
ADD dword ptr [ESP + 0x48],0x1
ADD ESP,0x10
CMP ESI,EBP
JA 0x0005d200
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfb0c]
PUSH 0x5
JMP 0x0005c678
MOV ESI,dword ptr [ESP + 0x14]
MOV EDI,dword ptr [ESP + 0x20]
SUB ESP,0xc
MOV EAX,dword ptr [ESP + 0x44]
SHL EAX,0x4
PUSH EAX
CALL 0x0006b190
MOV dword ptr [ESP + 0x24],EAX
ADD ESP,0x10
CMP byte ptr [ESI + 0x1],0x0
JZ 0x0005d34f
MOV ESI,dword ptr [ESP + 0xc]
MOV dword ptr [ESP + 0x20],EBP
MOV EBP,EAX
NOP
MOV EAX,ESI
SUB ESP,0x8
MOV dword ptr [EBP],EDI
ADD EBP,0x10
SUB EAX,EDI
PUSH EAX
PUSH EDI
CALL 0x00013310
ADD ESP,0x10
LEA EDI,[EDI + EAX*0x1 + 0x1]
PUSH ESI
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EDI
CALL 0x0004f990
ADD EDI,dword ptr [ESP + 0x98]
MOV dword ptr [EBP + -0xc],EAX
PUSH ESI
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH EDI
CALL 0x0004f990
ADD EDI,dword ptr [ESP + 0xa8]
ADD ESP,0x20
MOV dword ptr [EBP + -0x8],EAX
PUSH ESI
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EDI
CALL 0x0004f990
ADD EDI,dword ptr [ESP + 0x98]
ADD ESP,0x10
MOV dword ptr [EBP + -0x4],EAX
CMP byte ptr [EDI],0x0
JNZ 0x0005d2e0
MOV EBP,dword ptr [ESP + 0x20]
MOV ESI,dword ptr [ESP + 0x28]
ADD EBP,0x1
TEST ESI,ESI
JNZ 0x0005cd50
MOV EAX,dword ptr [ESP + 0x14]
SUB ESP,0x4
MOV ESI,dword ptr [EAX]
LEA EAX,[EBX + 0xfffdfa3d]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP EDX
POP ECX
PUSH ESI
PUSH EAX
CALL 0x00013060
ADD ESP,0x10
JMP 0x0005c27f
MOV dword ptr [ESP + 0x18],ESI
MOV ESI,dword ptr [ESP + 0x10]
SUB ESP,0xc
MOV dword ptr [ESP + 0x28],EDI
MOV EAX,dword ptr [ESP + 0x24]
MOV EDI,EBP
SHL EAX,0x2
PUSH EAX
CALL 0x0006b190
MOV dword ptr [ESP + 0x38],EAX
ADD ESP,0x10
CMP byte ptr [ESI],0x0
MOV EBP,EAX
JZ 0x0005d3e2
LEA ESI,[ESI]
SUB ESP,0x8
MOV EAX,ESI
MOV dword ptr [EBP],ESI
ADD EBP,0x4
SUB EAX,dword ptr [ESP + 0x14]
PUSH EAX
PUSH ESI
CALL 0x00013310
ADD ESP,0x10
LEA ESI,[ESI + EAX*0x1 + 0x1]
CMP byte ptr [ESI],0x0
JNZ 0x0005d3c0
MOV ESI,EDI
JMP 0x0005c259
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc87d6]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0x10
MOV ESI,EAX
JMP 0x0005cdf1
MOV EAX,0x1
SUB ESP,0x8
PUSH EAX
LEA EAX,[EBX + 0x5dd8]
PUSH ESI
CALL dword ptr [EAX]
MOV EBP,dword ptr [ESP + 0x60]
ADD ESP,0x10
AND EAX,0xff
MOV dword ptr [ESP + 0x20],EAX
JZ 0x0005d820
LEA EAX,[ESP + 0x88]
XOR ESI,ESI
XOR EDI,EDI
MOV dword ptr [ESP + 0x10],EAX
LEA ESI,[ESI]
NOP
PUSH dword ptr [ESP + 0xc]
PUSH 0x0
PUSH dword ptr [ESP + 0x18]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0x98]
PUSH dword ptr [ESP + 0x1c]
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH EBP
CALL 0x0004f990
ADD EBP,dword ptr [ESP + 0xa8]
ADD ESI,0x1
ADC EDI,0x0
ADD ESP,0x20
MOV EAX,dword ptr [ESP + 0x20]
MOV EDX,EDI
XOR EAX,ESI
OR EDX,EAX
JNZ 0x0005d450
JMP 0x0005c79a
MOVZX EDI,byte ptr [EAX + ESI*0x1 + -0x1]
TEST EDI,EDI
JZ 0x0005cf74
LEA EAX,[EBX + 0xfffc89c5]
LEA ESI,[ESP + 0x88]
MOV dword ptr [ESP + 0x28],EAX
LEA EAX,[EBX + 0xfffc84b1]
LEA EBP,[EBX + 0xfffdfa04]
MOV dword ptr [ESP + 0x20],ESI
MOV ESI,dword ptr [ESP + 0x18]
MOV dword ptr [ESP + 0x30],EAX
JMP 0x0005d56f
PUSH dword ptr [ESP + 0xc]
SUB EDI,0x1
PUSH 0x0
PUSH dword ptr [ESP + 0x28]
PUSH ESI
CALL 0x0004f990
MOV dword ptr [ESP],0x0
MOV ECX,EDX
MOV EDX,EAX
MOV EAX,dword ptr [ESP + 0x38]
CALL 0x0004cb50
ADD ESP,0xc
PUSH dword ptr [ESP + 0x34]
PUSH EAX
PUSH EBP
CALL 0x00013060
ADD ESI,dword ptr [ESP + 0x98]
ADD ESP,0x10
CMP EDI,0x1
JNZ 0x0005d530
MOV EDI,ESI
MOV ESI,dword ptr [ESP + 0x20]
PUSH dword ptr [ESP + 0xc]
PUSH 0x0
PUSH ESI
PUSH EDI
CALL 0x0004f990
MOV dword ptr [ESP],0x0
MOV ECX,EDX
MOV EDX,EAX
LEA EAX,[EBX + 0xfffc89c5]
CALL 0x0004cb50
ADD ESP,0xc
LEA EDX,[EBX + 0xfffc7c55]
PUSH EDX
PUSH EAX
PUSH EBP
CALL 0x00013060
MOV EAX,dword ptr [ESP + 0x98]
ADD EDI,EAX
MOV dword ptr [ESP + 0x28],EDI
ADD ESP,0x10
JMP 0x0005cf74
SUB ESP,0xc
LEA EAX,[EBX + 0xfffda67c]
PUSH 0x0
MOV EDX,dword ptr [ESP + 0x28]
MOV ECX,dword ptr [ESP + 0x2c]
CALL 0x0004cb50
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xfffdcdf4]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
ADD ESP,0xc
PUSH EDI
PUSH ESI
PUSH EAX
CALL 0x00066db0
ADD ESP,0xc
LEA EAX,[EBX + 0xfffc2aee]
PUSH 0x5
JMP 0x0005d3fb
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc9cc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x50]
MOV EAX,dword ptr [EAX]
AND EAX,0x2
JZ 0x0005a98d
MOV EAX,dword ptr [ESP + 0xd0]
LEA EDX,[EAX + 0xc]
MOV EAX,dword ptr [EAX + 0x8]
CALL 0x0004eb80
MOV dword ptr [ESP + 0x74],0x0
JMP 0x0005a9d0
MOV dword ptr [ESP + 0x18],EBP
JMP 0x0005b730
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdc9cc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
MOV dword ptr [ESP],EAX
CALL 0x00066db0
ADD ESP,0x10
XOR EAX,EAX
ADD ESP,0xbc
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcdc0]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
POP ESI
POP EDI
PUSH EBP
PUSH EAX
CALL 0x00066db0
ADD ESP,0x10
XOR EAX,EAX
JMP 0x0005d718
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdcb94]
PUSH 0x5
JMP 0x0005d6a3
LEA EAX,[ESP + 0x88]
MOV dword ptr [ESP + 0x10],EAX
JMP 0x0005c79a
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfa0b]
PUSH 0x5
JMP 0x0005c678
SUB ESP,0x4
LEA EAX,[EBX + 0xfffdfa25]
PUSH 0x5
JMP 0x0005c678
MOV EAX,dword ptr [ESP + 0x50]
TEST byte ptr [EAX],0x2
JZ 0x0005a988
MOV EAX,dword ptr [ESP + 0xd0]
LEA EDX,[EAX + 0xc]
MOV EAX,dword ptr [EAX + 0x8]
CALL 0x0004eb80
JMP 0x0005a988
MOV EBP,ESI
LEA ESI,[EBX + 0xfffdfa25]
JMP 0x0005cd30
MOV EBP,ESI
LEA ESI,[EBX + 0xfffdfa0b]
JMP 0x0005c9e0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 FUN_0005a8e0(int param_1)\n\n{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}\n\n" comment (function_definition "undefined4 FUN_0005a8e0(int param_1)\n\n{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" type_identifier (function_declarator "FUN_0005a8e0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" { (declaration "code *pcVar1;" type_identifier (pointer_declarator "*pcVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined1 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "byte bVar13;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "size_t __n;" primitive_type identifier ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "byte *pbVar16;" type_identifier (pointer_declarator "*pbVar16" * identifier) ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "bool bVar21;" primitive_type identifier ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "undefined1 uVar23;" type_identifier identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "undefined1 uVar25;" type_identifier identifier ;) (declaration "byte bVar26;" type_identifier identifier ;) (declaration "ulonglong uVar27;" type_identifier identifier ;) (declaration "longlong lVar28;" type_identifier identifier ;) (declaration "longlong lVar29;" type_identifier identifier ;) (declaration "longlong lVar30;" type_identifier identifier ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined1 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "byte *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "byte *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "byte *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "undefined4 *local_ac;" type_identifier (pointer_declarator "*local_ac" * identifier) ;) (declaration "undefined4 *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "byte *local_9c;" type_identifier (pointer_declarator "*local_9c" * identifier) ;) (declaration "int local_98;" primitive_type identifier ;) (declaration "uint local_94;" type_identifier identifier ;) (declaration "int local_90;" primitive_type identifier ;) (declaration "uint local_8c;" type_identifier identifier ;) (declaration "undefined1 local_88;" type_identifier identifier ;) (declaration "uint uStack_84;" type_identifier identifier ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint local_78;" type_identifier identifier ;) (declaration "char *local_6c;" primitive_type (pointer_declarator "*local_6c" * identifier) ;) (declaration "byte *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "undefined1 *local_54 [3];" type_identifier (pointer_declarator "*local_54 [3]" * (array_declarator "local_54 [3]" identifier [ number_literal ])) ;) (declaration "byte *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "int local_44;" primitive_type identifier ;) (declaration "undefined4 local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "uint local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "int local_28;" primitive_type identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "uint local_20 [3];" type_identifier (array_declarator "local_20 [3]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar26 = 0;" (assignment_expression "bVar26 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x5a8e9;" (assignment_expression "uStack_14 = 0x5a8e9" identifier = number_literal) ;) (expression_statement "local_bc = *(byte **)(param_1 + 0x10);" (assignment_expression "local_bc = *(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 "pbVar5 = local_bc + *(int *)(param_1 + 0x1c);" (assignment_expression "pbVar5 = local_bc + *(int *)(param_1 + 0x1c)" identifier = (binary_expression "local_bc + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))))) ;) (if_statement "if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" if (parenthesized_expression "(DAT_000b9db0 == 0)" ( (binary_expression "DAT_000b9db0 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_000b9db0 = 1;\n  }" { (expression_statement "DAT_000b9db0 = 1;" (assignment_expression "DAT_000b9db0 = 1" identifier = number_literal) ;) }) (else_clause "else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" else (if_statement "if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" if (parenthesized_expression "((DAT_000b9db0 & 1) == 0)" ( (binary_expression "(DAT_000b9db0 & 1) == 0" (parenthesized_expression "(DAT_000b9db0 & 1)" ( (binary_expression "DAT_000b9db0 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" { (if_statement "if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }" if (parenthesized_expression "((DAT_000b9db0 & 2) == 0)" ( (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar23 = local_bc < pbVar5;" (assignment_expression "uVar23 = local_bc < pbVar5" identifier = (binary_expression "local_bc < pbVar5" identifier < identifier)) ;) (expression_statement "uVar25 = local_bc == pbVar5;" (assignment_expression "uVar25 = local_bc == pbVar5" identifier = (binary_expression "local_bc == pbVar5" identifier == identifier)) ;) (if_statement "if (!(bool)uVar23) {\n      return 1;\n    }" if (parenthesized_expression "(!(bool)uVar23)" ( (unary_expression "!(bool)uVar23" ! (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })))) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 8)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 8)" * (cast_expression "(undefined4 *)(param_1 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (if_statement "if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" if (parenthesized_expression "((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0))" ( (binary_expression "(DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" (parenthesized_expression "(DAT_000b9d98 == 0)" ( (binary_expression "DAT_000b9d98 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" ( (comma_expression "iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0" (assignment_expression "iVar14 = *(int *)(param_1 + 0xc)" identifier = (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) ))))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" identifier (argument_list "(0,"Raw dump of debug contents of section %s:\n\n",5)" ( number_literal , (string_literal ""Raw dump of debug contents of section %s:\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" else (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier (argument_list "(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( number_literal , (string_literal ""Raw dump of debug contents of section %s (loaded from %s):\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,iVar14);" (call_expression "printf(pcVar6,uVar11,iVar14)" identifier (argument_list "(pcVar6,uVar11,iVar14)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "puVar2 = PTR_stdout_000b3fd8;" (assignment_expression "puVar2 = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "bVar21 = local_bc < pbVar5;" (assignment_expression "bVar21 = local_bc < pbVar5" identifier = (binary_expression "local_bc < pbVar5" identifier < identifier)) ;) (expression_statement "bVar24 = local_bc == pbVar5;" (assignment_expression "bVar24 = local_bc == pbVar5" identifier = (binary_expression "local_bc == pbVar5" identifier == identifier)) ;) (expression_statement "local_b4 = local_bc;" (assignment_expression "local_b4 = local_bc" identifier = identifier) ;) (if_statement "if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }" { (labeled_statement "LAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" statement_identifier : (do_statement "do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" do (compound_statement "{\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    }" { (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.";" (assignment_expression "pbVar16 = (byte *)".debug_line."" identifier = (cast_expression "(byte *)".debug_line."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line."" " string_content "))) ;) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);" do (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "bVar21 = (!bVar21 && !bVar24) == bVar21;" (assignment_expression "bVar21 = (!bVar21 && !bVar24) == bVar21" identifier = (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" ( (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }" { (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar20 < *pbVar16;" (assignment_expression "bVar22 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar21 = *pbVar20 == *pbVar16;" (assignment_expression "bVar21 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar21)" ( identifier )) ;) (if_statement "if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;" if (parenthesized_expression "((!bVar22 && !bVar21) == bVar22)" ( (binary_expression "(!bVar22 && !bVar21) == bVar22" (parenthesized_expression "(!bVar22 && !bVar21)" ( (binary_expression "!bVar22 && !bVar21" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar21" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005bd30;" goto statement_identifier ;)) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" identifier = identifier) ;) (if_statement "if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" if (parenthesized_expression "((char)DAT_000b763c == '\0')" ( (binary_expression "(char)DAT_000b763c == '\0'" (cast_expression "(char)DAT_000b763c" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" { (expression_statement "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";" (assignment_expression "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n"" identifier = (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ")) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (labeled_statement "LAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" identifier = (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005d6b6;" goto statement_identifier ;) })) (expression_statement "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff" identifier = (binary_expression "DAT_000b7634 >> 0x10 & 0xff" (binary_expression "DAT_000b7634 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) }) (else_clause "else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" else (compound_statement "{\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" { (labeled_statement "LAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);" statement_identifier : (expression_statement "local_94 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_94 = FUN_0004d730(&local_40,&local_48)" identifier = (call_expression "FUN_0004d730(&local_40,&local_48)" identifier (argument_list "(&local_40,&local_48)" ( (pointer_expression "&local_40" & identifier) , (pointer_expression "&local_48" & identifier) )))) ;)) (if_statement "if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" if (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" { (labeled_statement "LAB_0005d6b6:\n          uVar23 = 0;" statement_identifier : (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;)) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" identifier = (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal)) ;) (if_statement "if ((bool)uVar25) {\n            return 0;\n          }" if (parenthesized_expression "((bool)uVar25)" ( (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier (argument_list "(0,"  Offset:                      0x%lx\n",5)" ( number_literal , (string_literal ""  Offset:                      0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" ( identifier , (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "uVar11 = local_40;" (assignment_expression "uVar11 = local_40" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Length:                      %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Length:                      %ld\n",5)" identifier (argument_list "(0,"  Length:                      %ld\n",5)" ( number_literal , (string_literal ""  Length:                      %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_38 & 0xffff;" (assignment_expression "uVar19 = local_38 & 0xffff" identifier = (binary_expression "local_38 & 0xffff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  DWARF Version:               %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  DWARF Version:               %d\n",5)" identifier (argument_list "(0,"  DWARF Version:               %d\n",5)" ( number_literal , (string_literal ""  DWARF Version:               %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "uVar11 = local_34;" (assignment_expression "uVar11 = local_34" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Prologue Length:             %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Prologue Length:             %d\n",5)" identifier (argument_list "(0,"  Prologue Length:             %d\n",5)" ( number_literal , (string_literal ""  Prologue Length:             %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier (argument_list "(0,"  Minimum Instruction Length:  %d\n",5)" ( number_literal , (string_literal ""  Minimum Instruction Length:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (if_statement "if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" if (parenthesized_expression "(3 < (ushort)local_38)" ( (binary_expression "3 < (ushort)local_38" number_literal < (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier)) )) (compound_statement "{\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" { (expression_statement "uVar19 = local_2c >> 8;" (assignment_expression "uVar19 = local_2c >> 8" identifier = (binary_expression "local_2c >> 8" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier (argument_list "(0,"  Maximum Ops per Instruction: %d\n",5)" ( number_literal , (string_literal ""  Maximum Ops per Instruction: %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) })) (expression_statement "uVar19 = local_2c >> 0x10;" (assignment_expression "uVar19 = local_2c >> 0x10" identifier = (binary_expression "local_2c >> 0x10" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier (argument_list "(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( number_literal , (string_literal ""  Initial value of \'is_stmt\':  %d\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) (expression_statement "iVar14 = local_28;" (assignment_expression "iVar14 = local_28" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Base:                   %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Base:                   %d\n",5)" identifier (argument_list "(0,"  Line Base:                   %d\n",5)" ( number_literal , (string_literal ""  Line Base:                   %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,iVar14);" (call_expression "printf(pcVar6,iVar14)" identifier (argument_list "(pcVar6,iVar14)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 & 0xff;" (assignment_expression "uVar19 = local_24 & 0xff" identifier = (binary_expression "local_24 & 0xff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Range:                  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Range:                  %d\n",5)" identifier (argument_list "(0,"  Line Range:                  %d\n",5)" ( number_literal , (string_literal ""  Line Range:                  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 >> 8;" (assignment_expression "uVar19 = local_24 >> 8" identifier = (binary_expression "local_24 >> 8" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier (argument_list "(0,"  Opcode Base:                 %d\n",5)" ( number_literal , (string_literal ""  Opcode Base:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) (if_statement "if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" if (parenthesized_expression "((byte)local_24 == '\0')" ( (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" { (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" identifier = (call_expression "CONCAT31(local_24._1_3_,1)" identifier (argument_list "(local_24._1_3_,1)" ( (field_expression "local_24._1_3_" identifier . field_identifier) , number_literal )))) ;) })) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (if_statement "if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" if (parenthesized_expression "(pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94))" ( (binary_expression "pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)" identifier <= (cast_expression "(byte *)((local_24 >> 8 & 0xff) + local_94)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((local_24 >> 8 & 0xff) + local_94)" ( (binary_expression "(local_24 >> 8 & 0xff) + local_94" (parenthesized_expression "(local_24 >> 8 & 0xff)" ( (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal) )) + identifier) )))) )) (compound_statement "{\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" { (expression_statement "pcVar6 = "Line Base extends beyond end of section\n";" (assignment_expression "pcVar6 = "Line Base extends beyond end of section\n"" identifier = (string_literal ""Line Base extends beyond end of section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005d6a3;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n Opcodes:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n Opcodes:\n",5)" identifier (argument_list "(0,"\n Opcodes:\n",5)" ( number_literal , (string_literal ""\n Opcodes:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "uVar19 = (uint)local_24._1_1_;" (assignment_expression "uVar19 = (uint)local_24._1_1_" identifier = (cast_expression "(uint)local_24._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) ;) (if_statement "if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" if (parenthesized_expression "(1 < local_24._1_1_)" ( (binary_expression "1 < local_24._1_1_" number_literal < (field_expression "local_24._1_1_" identifier . field_identifier)) )) (compound_statement "{\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);" do (compound_statement "{\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          }" { (expression_statement "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14)" identifier = (binary_expression "(uint)*(byte *)(local_94 + -1 + iVar14)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_94 + -1 + iVar14)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + iVar14)" ( (binary_expression "local_94 + -1 + iVar14" (binary_expression "local_94 + -1" identifier + number_literal) + identifier) ))))) ;) (expression_statement "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);" (assignment_expression "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" identifier = (cast_expression "(char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" identifier (argument_list "(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" ( number_literal , (string_literal ""  Opcode %d has %d arg\n"" " string_content escape_sequence ") , (string_literal ""  Opcode %d has %d args\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "iVar10 = iVar14 + 1;" (assignment_expression "iVar10 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "printf(pcVar6,iVar14,uVar19);" (call_expression "printf(pcVar6,iVar14,uVar19)" identifier (argument_list "(pcVar6,iVar14,uVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" identifier = (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "iVar14 = iVar10;" (assignment_expression "iVar14 = iVar10" identifier = identifier) ;) }) while (parenthesized_expression "(iVar10 < (int)uVar19)" ( (binary_expression "iVar10 < (int)uVar19" identifier < (cast_expression "(int)uVar19" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "pbVar20 = (byte *)(local_94 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_94 + -1 + uVar19)" identifier = (cast_expression "(byte *)(local_94 + -1 + uVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + uVar19)" ( (binary_expression "local_94 + -1 + uVar19" (binary_expression "local_94 + -1" identifier + number_literal) + identifier) )))) ;) (if_statement "if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" if (parenthesized_expression "((ushort)local_38 < 5)" ( (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier) < number_literal) )) (compound_statement "{\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }" { (if_statement "if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" if (parenthesized_expression "(*pbVar20 == 0)" ( (binary_expression "*pbVar20 == 0" (pointer_expression "*pbVar20" * identifier) == number_literal) )) (compound_statement "{\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }" { (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier (argument_list "(0,"\n The Directory Table is empty.\n",5)" ( number_literal , (string_literal ""\n The Directory Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if (pbVar20[1] == 0) goto LAB_0005c013;" if (parenthesized_expression "(pbVar20[1] == 0)" ( (binary_expression "pbVar20[1] == 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_0005c013;" goto statement_identifier ;)) (labeled_statement "LAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier (argument_list "(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( number_literal , (string_literal ""\n The File Name Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" ( identifier , (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "pbVar16 = (byte *)0x5;" (assignment_expression "pbVar16 = (byte *)0x5" identifier = (cast_expression "(byte *)0x5" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier (argument_list "(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( number_literal , (string_literal ""  Entry\tDir\tTime\tSize\tName\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" if (parenthesized_expression "((local_b4 < pbVar5) && (pbVar20[1] != 0))" ( (binary_expression "(local_b4 < pbVar5) && (pbVar20[1] != 0)" (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(pbVar20[1] != 0)" ( (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" { (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (while_statement "while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" { (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" identifier = (binary_expression "DAT_000b9d24 + 1" identifier + number_literal)) ;) (expression_statement "printf("  %d\t",DAT_000b9d24,pbVar16);" (call_expression "printf("  %d\t",DAT_000b9d24,pbVar16)" identifier (argument_list "("  %d\t",DAT_000b9d24,pbVar16)" ( (string_literal ""  %d\t"" " string_content escape_sequence ") , identifier , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b4 = pbVar20 + sVar8 + 1;" (assignment_expression "local_b4 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" identifier = identifier) ;) (expression_statement "printf("%.*s\n",(int)pbVar5 - (int)pbVar20);" (call_expression "printf("%.*s\n",(int)pbVar5 - (int)pbVar20)" identifier (argument_list "("%.*s\n",(int)pbVar5 - (int)pbVar20)" ( (string_literal ""%.*s\n"" " string_content escape_sequence ") , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (if_statement "if (pbVar5 == local_b4) break;" if (parenthesized_expression "(pbVar5 == local_b4)" ( (binary_expression "pbVar5 == local_b4" identifier == identifier) )) (break_statement "break;" break ;)) (if_statement "if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;" if (parenthesized_expression "((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0))" ( (binary_expression "(pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)" (parenthesized_expression "(pbVar5 <= local_b4)" ( (binary_expression "pbVar5 <= local_b4" identifier <= identifier) )) || (parenthesized_expression "(pbVar20 = local_b4, *local_b4 == 0)" ( (comma_expression "pbVar20 = local_b4, *local_b4 == 0" (assignment_expression "pbVar20 = local_b4" identifier = identifier) , (binary_expression "*local_b4 == 0" (pointer_expression "*local_b4" * identifier) == number_literal)) ))) )) (goto_statement "goto LAB_0005c031;" goto statement_identifier ;)) })) (expression_statement "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name table entry\n",5)" identifier (argument_list "(0,"Corrupt file name table entry\n",5)" ( number_literal , (string_literal ""Corrupt file name table entry\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_b4 = pbVar5;" (assignment_expression "local_b4 = pbVar5" identifier = identifier) ;) })) }) (else_clause "else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" else (compound_statement "{\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" identifier (argument_list "(0,"\n The Directory Table (offset 0x%lx):\n",5)" ( number_literal , (string_literal ""\n The Directory Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,(int)pbVar20 - (int)local_bc);" (call_expression "printf(pcVar6,(int)pbVar20 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)pbVar20 - (int)local_bc)" ( identifier , (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (if_statement "if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" if (parenthesized_expression "((pbVar20 < pbVar5) && (*pbVar20 != 0))" ( (binary_expression "(pbVar20 < pbVar5) && (*pbVar20 != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) ))) )) (compound_statement "{\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);" do (compound_statement "{\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);" (call_expression "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" identifier (argument_list "("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" ( (string_literal ""  %d\t%.*s\n"" " string_content escape_sequence string_content escape_sequence ") , identifier , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (if_statement "if (pbVar5 <= pbVar20) break;" if (parenthesized_expression "(pbVar5 <= pbVar20)" ( (binary_expression "pbVar5 <= pbVar20" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) )) ;) })) (if_statement "if (pbVar5 + -1 <= pbVar20) break;" if (parenthesized_expression "(pbVar5 + -1 <= pbVar20)" ( (binary_expression "pbVar5 + -1 <= pbVar20" (binary_expression "pbVar5 + -1" identifier + number_literal) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar20[1] != 0) goto LAB_0005d01c;" if (parenthesized_expression "(pbVar20[1] != 0)" ( (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_0005d01c;" goto statement_identifier ;)) (labeled_statement "LAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier (argument_list "(0,"\n The File Name Table is empty.\n",5)" ( number_literal , (string_literal ""\n The File Name Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) }))) (labeled_statement "LAB_0005c031:\n          local_b4 = local_b4 + 1;" statement_identifier : (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" identifier = (binary_expression "local_b4 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" else (compound_statement "{\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" { (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext(0,"Directory",5);" (assignment_expression "uVar11 = dcgettext(0,"Directory",5)" identifier = (call_expression "dcgettext(0,"Directory",5)" identifier (argument_list "(0,"Directory",5)" ( number_literal , (string_literal ""Directory"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0005a380(&local_38,local_20,param_1,uVar11);" (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier (argument_list "(&local_38,local_20,param_1,uVar11)" ( (pointer_expression "&local_38" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uVar11 = dcgettext(0,"File name",5);" (assignment_expression "uVar11 = dcgettext(0,"File name",5)" identifier = (call_expression "dcgettext(0,"File name",5)" identifier (argument_list "(0,"File name",5)" ( number_literal , (string_literal ""File name"" " string_content ") , number_literal )))) ;) (expression_statement "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);" (assignment_expression "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier = (cast_expression "(byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier (argument_list "(&local_38,local_20,param_1,uVar11)" ( (pointer_expression "&local_38" & identifier) , identifier , identifier , identifier ))))) ;) }))) (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "DAT_000b7620 = local_40;" (assignment_expression "DAT_000b7620 = local_40" identifier = identifier) ;) (expression_statement "DAT_000b7624 = local_3c;" (assignment_expression "DAT_000b7624 = local_3c" identifier = identifier) ;) (expression_statement "DAT_000b7628 = local_38;" (assignment_expression "DAT_000b7628 = local_38" identifier = identifier) ;) (expression_statement "DAT_000b762c = local_34;" (assignment_expression "DAT_000b762c = local_34" identifier = identifier) ;) (expression_statement "DAT_000b7630 = local_30;" (assignment_expression "DAT_000b7630 = local_30" identifier = identifier) ;) (expression_statement "DAT_000b7634 = local_2c;" (assignment_expression "DAT_000b7634 = local_2c" identifier = identifier) ;) (expression_statement "DAT_000b7638 = local_28;" (assignment_expression "DAT_000b7638 = local_28" identifier = identifier) ;) (expression_statement "DAT_000b763c = local_24;" (assignment_expression "DAT_000b763c = local_24" identifier = identifier) ;) (expression_statement "DAT_000b7640 = local_20[0];" (assignment_expression "DAT_000b7640 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) }))) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" identifier = identifier) ;) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" if (parenthesized_expression "(local_b4 < local_48)" ( (binary_expression "local_b4 < local_48" identifier < identifier) )) (compound_statement "{\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" { (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Line Number Statements:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Line Number Statements:\n",5)" identifier (argument_list "(0," Line Number Statements:\n",5)" ( number_literal , (string_literal "" Line Number Statements:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (if_statement "if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" if (parenthesized_expression "(local_b4 < local_48)" ( (binary_expression "local_b4 < local_48" identifier < identifier) )) (compound_statement "{\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" { (labeled_statement "LAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" statement_identifier : (expression_statement "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" (call_expression "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" identifier (argument_list "("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" ( (string_literal ""  [0x%08lx]"" " string_content ") , (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) , identifier ))) ;)) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" identifier = identifier) ;) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" identifier = identifier) ;) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) (if_statement "if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" if (parenthesized_expression "(local_24._1_1_ <= bVar13)" ( (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" identifier . field_identifier) <= identifier) )) (compound_statement "{\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" { (expression_statement "bVar13 = bVar13 - local_24._1_1_;" (assignment_expression "bVar13 = bVar13 - local_24._1_1_" identifier = (binary_expression "bVar13 - local_24._1_1_" identifier - (field_expression "local_24._1_1_" identifier . field_identifier))) ;) (expression_statement "uVar7 = local_2c & 0xff;" (assignment_expression "uVar7 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "uVar18 = (uint)(bVar13 / (byte)local_24);" (assignment_expression "uVar18 = (uint)(bVar13 / (byte)local_24)" identifier = (call_expression "(uint)(bVar13 / (byte)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar13 / (byte)local_24)" ( (binary_expression "bVar13 / (byte)local_24" identifier / (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) ;) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }" { (expression_statement "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;" (assignment_expression "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7" identifier = (binary_expression "(ulonglong)uVar18 * (ulonglong)uVar7" (cast_expression "(ulonglong)uVar18" ( (type_descriptor "ulonglong" type_identifier) ) identifier) * (cast_expression "(ulonglong)uVar7" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier + (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier ))))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "((int)lVar28 != 0)" ( (binary_expression "(int)lVar28 != 0" (cast_expression "(int)lVar28" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";" (assignment_expression "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s"" identifier = (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ")) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" identifier (argument_list "(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ") , number_literal ))))) ;) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" identifier = (pointer_expression "&DAT_0007bc55" & identifier)) ;) }) (else_clause "else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" else (compound_statement "{\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" { (expression_statement "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);" (assignment_expression "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" identifier = (call_expression "FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" identifier (argument_list "((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" ( (binary_expression "(byte)DAT_000b9d20 + uVar18" (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier) + identifier) , (call_expression "CARRY4((uint)(byte)DAT_000b9d20,uVar18)" identifier (argument_list "((uint)(byte)DAT_000b9d20,uVar18)" ( (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) , identifier ))) , (field_expression "local_2c._1_1_" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar32 = local_54[0];" (assignment_expression "puVar32 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = iVar10 * uVar7;" (assignment_expression "uVar7 = iVar10 * uVar7" identifier = (binary_expression "iVar10 * uVar7" identifier * identifier)) ;) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" identifier = (binary_expression "uVar7 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier = (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar7,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar7,uVar19)" identifier (argument_list "(uVar7,uVar19)" ( identifier , identifier )))))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (cast_expression "(char)local_54[0]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_54[0]" identifier [ number_literal ])) )))) ;) (if_statement "if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" identifier (argument_list "(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s[%d]%s"" " string_content ") , number_literal ))))) ;) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ identifier = (string_literal """" " ")) ;) }))) (expression_statement "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);" (call_expression "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" identifier (argument_list "(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" ( identifier , (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier , identifier , identifier , identifier ))) ;) (expression_statement "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;" (assignment_expression "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" identifier = (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24)" identifier + (call_expression "(uint)(bVar13 % (byte)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar13 % (byte)local_24)" ( (binary_expression "bVar13 % (byte)local_24" identifier % (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) + identifier)) ;) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" identifier = identifier) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5)" identifier = (cast_expression "(char *)dcgettext(0," and Line by %s to %d",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," and Line by %s to %d",5)" identifier (argument_list "(0," and Line by %s to %d",5)" ( number_literal , (string_literal "" and Line by %s to %d"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9d08 == 0) goto LAB_0005bb80;" if (parenthesized_expression "(DAT_000b9d08 == 0)" ( (binary_expression "DAT_000b9d08 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005bb80;" goto statement_identifier ;)) (labeled_statement "code_r0x0005b679:\n            iVar14 = DAT_000b9d08;" statement_identifier : (expression_statement "iVar14 = DAT_000b9d08;" (assignment_expression "iVar14 = DAT_000b9d08" identifier = identifier) ;)) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," (view %u)\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0," (view %u)\n")" identifier = (cast_expression "(char *)dcgettext(0," (view %u)\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," (view %u)\n")" identifier (argument_list "(0," (view %u)\n")" ( number_literal , (string_literal "" (view %u)\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,iVar14,puVar32);" (call_expression "printf(pcVar6,iVar14,puVar32)" identifier (argument_list "(pcVar6,iVar14,puVar32)" ( identifier , identifier , identifier ))) ;) (labeled_statement "LAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;" statement_identifier : (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" identifier = (binary_expression "DAT_000b9d08 + 1" identifier + number_literal)) ;)) (goto_statement "goto LAB_0005b6a1;" goto statement_identifier ;) })) (switch_statement "switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" switch (parenthesized_expression "(bVar13)" ( identifier )) (compound_statement "{\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" { (case_statement "case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;" case number_literal : (expression_statement "iVar14 = FUN_000523d0();" (assignment_expression "iVar14 = FUN_000523d0()" identifier = (call_expression "FUN_000523d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_b4 = local_b4 + iVar14;" (assignment_expression "local_b4 = local_b4 + iVar14" identifier = (binary_expression "local_b4 + iVar14" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;" case number_literal : (expression_statement "puVar31 = &UNK_0009393c;" (assignment_expression "puVar31 = &UNK_0009393c" identifier = (pointer_expression "&UNK_0009393c" & identifier)) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,&UNK_0009393c);" (assignment_expression "pcVar6 = (char *)dcgettext(0,&UNK_0009393c)" identifier = (cast_expression "(char *)dcgettext(0,&UNK_0009393c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,&UNK_0009393c)" identifier (argument_list "(0,&UNK_0009393c)" ( number_literal , (pointer_expression "&UNK_0009393c" & identifier) ))))) ;) (expression_statement "printf(pcVar6,puVar31,puVar32);" (call_expression "printf(pcVar6,puVar31,puVar32)" identifier (argument_list "(pcVar6,puVar31,puVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9d08 != 0) goto code_r0x0005b679;" if (parenthesized_expression "(DAT_000b9d08 != 0)" ( (binary_expression "DAT_000b9d08 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x0005b679;" goto statement_identifier ;)) (labeled_statement "LAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (goto_statement "goto LAB_0005b698;" goto statement_identifier ;)) (case_statement "case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;" case number_literal : (expression_statement "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" identifier = identifier) ;) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" identifier = identifier) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" { (expression_statement "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);" (assignment_expression "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" identifier = (binary_expression "(uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" (parenthesized_expression "(uVar27 & 0xffffffff)" ( (binary_expression "uVar27 & 0xffffffff" identifier & number_literal) )) * (call_expression "(ulonglong)(local_2c & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) ))))) ;) (expression_statement "uVar19 = (uint)lVar28;" (assignment_expression "uVar19 = (uint)lVar28" identifier = (cast_expression "(uint)lVar28" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" identifier = (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff)" (cast_expression "(int)(uVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar27 >> 0x20)" ( (binary_expression "uVar27 >> 0x20" identifier >> number_literal) ))) * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) ))) + (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))))) ;) (expression_statement "bVar21 = CARRY4(DAT_000b9d00,uVar19);" (assignment_expression "bVar21 = CARRY4(DAT_000b9d00,uVar19)" identifier = (call_expression "CARRY4(DAT_000b9d00,uVar19)" identifier (argument_list "(DAT_000b9d00,uVar19)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d00 = DAT_000b9d00 + uVar19;" (assignment_expression "DAT_000b9d00 = DAT_000b9d00 + uVar19" identifier = (binary_expression "DAT_000b9d00 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21" identifier = (binary_expression "DAT_000b9d04 + iVar14 + (uint)bVar21" (binary_expression "DAT_000b9d04 + iVar14" identifier + identifier) + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(iVar14 != 0 || uVar19 != 0)" ( (binary_expression "iVar14 != 0 || uVar19 != 0" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "uVar19 != 0" identifier != number_literal)) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Advance PC by %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b8b1;" goto statement_identifier ;) })) (expression_statement "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);" (assignment_expression "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" identifier = (call_expression "FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" identifier (argument_list "(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" ( (binary_expression "uVar27 + (byte)DAT_000b9d20" identifier + (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) , (field_expression "local_2c._1_1_" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar3 = local_54[0];" (assignment_expression "puVar3 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = iVar10 * (local_2c & 0xff);" (assignment_expression "uVar7 = iVar10 * (local_2c & 0xff)" identifier = (binary_expression "iVar10 * (local_2c & 0xff)" identifier * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" identifier = (binary_expression "uVar7 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier = (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar7,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar7,uVar19)" identifier (argument_list "(uVar7,uVar19)" ( identifier , identifier )))))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (cast_expression "(char)local_54[0]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_54[0]" identifier [ number_literal ])) )))) ;) (if_statement "if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier (argument_list "(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( number_literal , (string_literal ""  Advance PC by %s to 0x%s[%d]%s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" identifier (argument_list "(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" ( identifier , identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;" case number_literal : (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,1,pbVar5)" identifier (argument_list "(local_b4,&local_44,1,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "puVar32 = DAT_000b9d10 + iVar14;" (assignment_expression "puVar32 = DAT_000b9d10 + iVar14" identifier = (binary_expression "DAT_000b9d10 + iVar14" identifier + identifier)) ;) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" identifier = identifier) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier (argument_list "(0,"  Advance Line by %s to %d\n",5)" ( number_literal , (string_literal ""  Advance Line by %s to %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;" case number_literal : (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier (argument_list "(0,"  Set File Name to entry %s in the File Name Table\n")" ( number_literal , (string_literal ""  Set File Name to entry %s in the File Name Table\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;" case number_literal : (expression_statement "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set column to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set column to %s\n")" identifier (argument_list "(0,"  Set column to %s\n")" ( number_literal , (string_literal ""  Set column to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar12,puVar32);" (call_expression "printf(pcVar6,uVar12,puVar32)" identifier (argument_list "(pcVar6,uVar12,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d14 = uVar11;" (assignment_expression "DAT_000b9d14 = uVar11" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;" case number_literal : (expression_statement "bVar21 = DAT_000b9d18 == 0;" (assignment_expression "bVar21 = DAT_000b9d18 == 0" identifier = (binary_expression "DAT_000b9d18 == 0" identifier == number_literal)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set is_stmt to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set is_stmt to %s\n")" identifier (argument_list "(0,"  Set is_stmt to %s\n")" ( number_literal , (string_literal ""  Set is_stmt to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d18 = (uint)bVar21;" (assignment_expression "DAT_000b9d18 = (uint)bVar21" identifier = (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;" case number_literal : (expression_statement "pcVar6 = "  Set basic block\n";" (assignment_expression "pcVar6 = "  Set basic block\n"" identifier = (string_literal ""  Set basic block\n"" " string_content escape_sequence ")) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Set basic block\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Set basic block\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set basic block\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set basic block\n")" identifier (argument_list "(0,"  Set basic block\n")" ( number_literal , (string_literal ""  Set basic block\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" identifier (argument_list "(pcVar9,pcVar6,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n            if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;" case number_literal : (if_statement "if (local_2c._1_1_ == '\0') {\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\0')" ( (binary_expression "local_2c._1_1_ == '\0'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Does not return */\n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" { comment (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" ( (pointer_expression "*pcVar1" * identifier) )) (argument_list "()" ( ))) ;) })) (expression_statement "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);" (assignment_expression "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" identifier = (binary_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" (cast_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (binary_expression "(ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)" (cast_expression "(ulonglong)(byte)~local_24._1_1_" ( (type_descriptor "ulonglong" type_identifier) ) (cast_expression "(byte)~local_24._1_1_" ( (type_descriptor "byte" type_identifier) ) (unary_expression "~local_24._1_1_" ~ (field_expression "local_24._1_1_" identifier . field_identifier)))) / (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(local_24 & 0xff)" ( (binary_expression "local_24 & 0xff" identifier & number_literal) )))) ))) * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "bVar21 = CARRY4(uVar19,DAT_000b9d00);" (assignment_expression "bVar21 = CARRY4(uVar19,DAT_000b9d00)" identifier = (call_expression "CARRY4(uVar19,DAT_000b9d00)" identifier (argument_list "(uVar19,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d00 = uVar19 + DAT_000b9d00;" (assignment_expression "DAT_000b9d00 = uVar19 + DAT_000b9d00" identifier = (binary_expression "uVar19 + DAT_000b9d00" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21" identifier = (binary_expression "DAT_000b9d04 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by constant %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;" statement_identifier : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6)" identifier (argument_list "(0,pcVar6)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55)" identifier (argument_list "(pcVar6,uVar12,uVar11,&DAT_0007bc55)" ( identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;" case number_literal : (if_statement "if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" if (parenthesized_expression "(pbVar20 + 3 < pbVar5)" ( (binary_expression "pbVar20 + 3 < pbVar5" (binary_expression "pbVar20 + 3" identifier + number_literal) < identifier) )) (compound_statement "{\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) (labeled_statement "code_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" statement_identifier : (expression_statement "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" (assignment_expression "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(local_b4,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(local_b4,iVar14)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" else (compound_statement "{\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" { (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (if_statement "if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;" if (parenthesized_expression "((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))" ( (binary_expression "(local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)local_b4" identifier = (binary_expression "(int)pbVar5 - (int)local_b4" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier))) , (comma_expression "lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "lVar28 = 0" identifier = number_literal) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal))) ))) )) (goto_statement "goto code_r0x0005d4cd;" goto statement_identifier ;)) }))) (expression_statement "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier + (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier ))))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar28;" (assignment_expression "DAT_000b9d00 = (uint)lVar28" identifier = (cast_expression "(uint)lVar28" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "puVar32 = (undefined1 *)FUN_0004cb50(0);" (assignment_expression "puVar32 = (undefined1 *)FUN_0004cb50(0)" identifier = (cast_expression "(undefined1 *)FUN_0004cb50(0)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier (argument_list "(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( number_literal , (string_literal ""  Advance PC by fixed size amount %s to 0x%s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_b4 = pbVar20 + 3;" (assignment_expression "local_b4 = pbVar20 + 3" identifier = (binary_expression "pbVar20 + 3" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;" case number_literal : (expression_statement "pcVar6 = "  Set prologue_end to true\n";" (assignment_expression "pcVar6 = "  Set prologue_end to true\n"" identifier = (string_literal ""  Set prologue_end to true\n"" " string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b70b;" goto statement_identifier ;)) (case_statement "case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;" case number_literal : (expression_statement "pcVar6 = "  Set epilogue_begin to true\n";" (assignment_expression "pcVar6 = "  Set epilogue_begin to true\n"" identifier = (string_literal ""  Set epilogue_begin to true\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;" statement_identifier : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar6)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6)" identifier (argument_list "(0,pcVar6)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" identifier (argument_list "(pcVar9,pcVar6,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" if (parenthesized_expression "(local_48 <= local_b4)" ( (binary_expression "local_48 <= local_b4" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;)) (case_statement "case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;" case number_literal : (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set ISA to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set ISA to %s\n")" identifier (argument_list "(0,"  Set ISA to %s\n")" ( number_literal , (string_literal ""  Set ISA to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);" default : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ")" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ")" identifier (argument_list "(0,"  Unknown opcode %d with operands: ")" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") ))))) ;) (expression_statement "printf(pcVar6,(uint)bVar13,puVar32);" (call_expression "printf(pcVar6,(uint)bVar13,puVar32)" identifier (argument_list "(pcVar6,(uint)bVar13,puVar32)" ( identifier , (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier ))) ;) (if_statement "if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" if (parenthesized_expression "((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0))" ( (binary_expression "(local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" (parenthesized_expression "(local_94 != 0)" ( (binary_expression "local_94 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" ( (comma_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13)" identifier = (binary_expression "(uint)*(byte *)(local_94 + -1 + (uint)bVar13)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_94 + -1 + (uint)bVar13)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + (uint)bVar13)" ( (binary_expression "local_94 + -1 + (uint)bVar13" (binary_expression "local_94 + -1" identifier + number_literal) + (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) , (binary_expression "uVar19 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" { (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" for ( ; (binary_expression "uVar19 != 1" identifier != number_literal) ; (assignment_expression "uVar19 = uVar19 - 1" identifier = (binary_expression "uVar19 - 1" identifier - number_literal)) ) (compound_statement "{\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" { (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) })) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" identifier = (pointer_expression "&DAT_0007bc55" & identifier)) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) })) (expression_statement "putc(10,*(FILE **)puVar2);" (call_expression "putc(10,*(FILE **)puVar2)" identifier (argument_list "(10,*(FILE **)puVar2)" ( number_literal , (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) })) (labeled_statement "LAB_0005b6a1:\n          pbVar20 = local_b4;" statement_identifier : (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;)) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" if (parenthesized_expression "(local_48 <= local_b4)" ( (binary_expression "local_48 <= local_b4" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;) })) (labeled_statement "LAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" identifier = (binary_expression "pbVar5 < local_b4" identifier < identifier)) ;) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" identifier = (binary_expression "pbVar5 == local_b4" identifier == identifier)) ;) (if_statement "if (pbVar5 <= local_b4) break;" if (parenthesized_expression "(pbVar5 <= local_b4)" ( (binary_expression "pbVar5 <= local_b4" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0005b368;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5)" identifier = (cast_expression "(char *)dcgettext(0," No Line Number Statements.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," No Line Number Statements.\n",5)" identifier (argument_list "(0," No Line Number Statements.\n",5)" ( number_literal , (string_literal "" No Line Number Statements.\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" identifier = (binary_expression "pbVar5 < local_b4" identifier < identifier)) ;) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" identifier = (binary_expression "pbVar5 == local_b4" identifier == identifier)) ;) }) while (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) ;)) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" identifier = (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" if (parenthesized_expression "(!(bool)uVar25)" ( (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" { (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" statement_identifier : (do_statement "do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" do (compound_statement "{\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      }" { (expression_statement "local_6c = ".debug_line.";" (assignment_expression "local_6c = ".debug_line."" identifier = (string_literal "".debug_line."" " string_content ")) ;) (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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) ))))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "uVar23 = *pbVar20 < (byte)*local_6c;" (assignment_expression "uVar23 = *pbVar20 < (byte)*local_6c" identifier = (binary_expression "*pbVar20 < (byte)*local_6c" (pointer_expression "*pbVar20" * identifier) < (binary_expression "(byte)*local_6c" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "uVar25 = *pbVar20 == *local_6c;" (assignment_expression "uVar25 = *pbVar20 == *local_6c" identifier = (binary_expression "*pbVar20 == *local_6c" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*local_6c" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);" (assignment_expression "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)local_6c + (uint)bVar26 * -2 + 1)" ( (binary_expression "(byte *)local_6c + (uint)bVar26 * -2 + 1" (binary_expression "(byte *)local_6c + (uint)bVar26 * -2" (cast_expression "(byte *)local_6c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "((bool)uVar25)" ( (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (expression_statement "bVar21 = false;" (assignment_expression "bVar21 = false" identifier = false) ;) (expression_statement "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;" (assignment_expression "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" identifier = (binary_expression "(!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" (parenthesized_expression "(!(bool)uVar23 && !(bool)uVar25)" ( (binary_expression "!(bool)uVar23 && !(bool)uVar25" (unary_expression "!(bool)uVar23" ! (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier))) ;) (if_statement "if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }" { (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);" do (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (if_statement "if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;" if (parenthesized_expression "((!bVar21 && !bVar24) == bVar21)" ( (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" ( (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005c150;" goto statement_identifier ;)) (expression_statement "local_20[0] = DAT_000b7600;" (assignment_expression "local_20[0] = DAT_000b7600" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_40 = DAT_000b75e0;" (assignment_expression "local_40 = DAT_000b75e0" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b75e4;" (assignment_expression "local_3c = DAT_000b75e4" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b75e8;" (assignment_expression "local_38 = DAT_000b75e8" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b75ec;" (assignment_expression "local_34 = DAT_000b75ec" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b75f0;" (assignment_expression "local_30 = DAT_000b75f0" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b75f4;" (assignment_expression "local_2c = DAT_000b75f4" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b75f8;" (assignment_expression "local_28 = DAT_000b75f8" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b75fc;" (assignment_expression "local_24 = DAT_000b75fc" identifier = identifier) ;) (if_statement "if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" if (parenthesized_expression "((char)DAT_000b75fc == '\0')" ( (binary_expression "(char)DAT_000b75fc == '\0'" (cast_expression "(char)DAT_000b75fc" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" { (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (expression_statement "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);" (assignment_expression "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" identifier (argument_list "(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" ( number_literal , (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff" identifier = (binary_expression "DAT_000b75f4 >> 0x10 & 0xff" (binary_expression "DAT_000b75f4 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (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 "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" identifier = number_literal) ;) (if_statement "if (local_bc < pbVar5) goto LAB_0005ad11;" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" else (compound_statement "{\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" { (labeled_statement "LAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);" statement_identifier : (expression_statement "local_90 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_90 = FUN_0004d730(&local_40,&local_48)" identifier = (call_expression "FUN_0004d730(&local_40,&local_48)" identifier (argument_list "(&local_40,&local_48)" ( (pointer_expression "&local_40" & identifier) , (pointer_expression "&local_48" & identifier) )))) ;)) (if_statement "if (local_90 == 0) {\n            return 0;\n          }" if (parenthesized_expression "(local_90 == 0)" ( (binary_expression "local_90 == 0" identifier == number_literal) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" if (parenthesized_expression "((byte)local_24 == '\0')" ( (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" { (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" identifier = (call_expression "CONCAT31(local_24._1_3_,1)" identifier (argument_list "(local_24._1_3_,1)" ( (field_expression "local_24._1_3_" identifier . field_identifier) , number_literal )))) ;) })) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" identifier = (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)(local_90 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_90 + -1 + uVar19)" identifier = (cast_expression "(byte *)(local_90 + -1 + uVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + -1 + uVar19)" ( (binary_expression "local_90 + -1 + uVar19" (binary_expression "local_90 + -1" identifier + number_literal) + identifier) )))) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (if_statement "if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" if (parenthesized_expression "(pbVar5 <= pbVar20)" ( (binary_expression "pbVar5 <= pbVar20" identifier <= identifier) )) (compound_statement "{\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" { (expression_statement "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);" (assignment_expression "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier = (call_expression "dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier (argument_list "(0,"opcode base of %d extends beyond end of section\n",5)" ( number_literal , (string_literal ""opcode base of %d extends beyond end of section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" identifier (argument_list "(uVar11,uVar19)" ( identifier , identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" if (parenthesized_expression "((ushort)local_38 < 5)" ( (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier) < number_literal) )) (compound_statement "{\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }" { (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (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 "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" identifier = identifier) ;) (if_statement "if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" if (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) )) (compound_statement "{\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" { (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);" do (compound_statement "{\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" { (expression_statement "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);" (assignment_expression "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" identifier = (call_expression "strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" identifier (argument_list "((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" ( (cast_expression "(char *)pbVar16" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar21 = 0xfffffffe < local_b4;" (assignment_expression "bVar21 = 0xfffffffe < local_b4" identifier = (binary_expression "0xfffffffe < local_b4" number_literal < identifier)) ;) (expression_statement "local_b4 = (byte *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (byte *)((int)local_b4 + 1)" identifier = (cast_expression "(byte *)((int)local_b4 + 1)" ( (type_descriptor "byte *" 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 "pbVar16 = pbVar16 + sVar8 + 1;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 1" identifier = (binary_expression "pbVar16 + sVar8 + 1" (binary_expression "pbVar16 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "local_b0 = local_b0 + bVar21;" (assignment_expression "local_b0 = local_b0 + bVar21" identifier = (binary_expression "local_b0 + bVar21" identifier + identifier)) ;) (if_statement "if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" if (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) (compound_statement "{\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" { (expression_statement "pcVar6 = "directory table ends unexpectedly\n";" (assignment_expression "pcVar6 = "directory table ends unexpectedly\n"" identifier = (string_literal ""directory table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "(*pbVar16 != 0)" ( (binary_expression "*pbVar16 != 0" (pointer_expression "*pbVar16" * identifier) != number_literal) )) ;) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4)" identifier = (cast_expression "(undefined4 *)FUN_0006b190((int)local_b4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190((int)local_b4 * 4)" identifier (argument_list "((int)local_b4 * 4)" ( (binary_expression "(int)local_b4 * 4" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))))) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) (expression_statement "puVar17 = local_a4;" (assignment_expression "puVar17 = local_a4" identifier = identifier) ;) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" while (parenthesized_expression "(bVar13 != 0)" ( (binary_expression "bVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" { (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17 = puVar17 + 1;" (assignment_expression "puVar17 = puVar17 + 1" identifier = (binary_expression "puVar17 + 1" identifier + number_literal)) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" identifier (argument_list "((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar20 - (int)pbVar5" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) })) })) (expression_statement "lVar28 = CONCAT44(local_b0,local_b4);" (assignment_expression "lVar28 = CONCAT44(local_b0,local_b4)" identifier = (call_expression "CONCAT44(local_b0,local_b4)" identifier (argument_list "(local_b0,local_b4)" ( identifier , identifier )))) ;) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" if (parenthesized_expression "((pbVar20 < pbVar5) && (pbVar16[1] != 0))" ( (binary_expression "(pbVar20 < pbVar5) && (pbVar16[1] != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(pbVar16[1] != 0)" ( (binary_expression "pbVar16[1] != 0" (subscript_expression "pbVar16[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "pbVar15 = pbVar20;" (assignment_expression "pbVar15 = pbVar20" identifier = identifier) ;) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);" do (compound_statement "{\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" { (expression_statement "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);" (assignment_expression "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" identifier = (call_expression "strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" identifier (argument_list "((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" ( (cast_expression "(char *)pbVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar15" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar15 = pbVar15 + sVar8 + 1;" (assignment_expression "pbVar15 = pbVar15 + sVar8 + 1" identifier = (binary_expression "pbVar15 + sVar8 + 1" (binary_expression "pbVar15 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" if (parenthesized_expression "(pbVar5 <= pbVar15)" ( (binary_expression "pbVar5 <= pbVar15" identifier <= identifier) )) (compound_statement "{\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" { (expression_statement "pcVar6 = "file table ends unexpectedly\n";" (assignment_expression "pcVar6 = "file table ends unexpectedly\n"" identifier = (string_literal ""file table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "(*pbVar15 != 0)" ( (binary_expression "*pbVar15 != 0" (pointer_expression "*pbVar15" * identifier) != number_literal) )) ;) (expression_statement "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10)" identifier = (cast_expression "(byte *)FUN_0006b190(local_94 * 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(local_94 * 0x10)" identifier (argument_list "(local_94 * 0x10)" ( (binary_expression "local_94 * 0x10" identifier * number_literal) ))))) ;) (expression_statement "bVar13 = pbVar16[1];" (assignment_expression "bVar13 = pbVar16[1]" identifier = (subscript_expression "pbVar16[1]" identifier [ number_literal ])) ;) (expression_statement "puVar17 = (undefined4 *)local_b8;" (assignment_expression "puVar17 = (undefined4 *)local_b8" identifier = (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" while (parenthesized_expression "(bVar13 != 0)" ( (binary_expression "bVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" { (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17 = puVar17 + 4;" (assignment_expression "puVar17 = puVar17 + 4" identifier = (binary_expression "puVar17 + 4" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) })) (expression_statement "pbVar16 = pbVar15 + 1;" (assignment_expression "pbVar16 = pbVar15 + 1" identifier = (binary_expression "pbVar15 + 1" identifier + number_literal)) ;) (if_statement "if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" if (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }" { (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s:\n",5)" identifier (argument_list "(0,"CU: %s:\n",5)" ( number_literal , (string_literal ""CU: %s:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) }) (else_clause "else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" else (compound_statement "{\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" { (labeled_statement "LAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);" statement_identifier : (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;)) (if_statement "if (uVar19 == 0) goto LAB_0005cd5b;" if (parenthesized_expression "(uVar19 == 0)" ( (binary_expression "uVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005cd5b;" goto statement_identifier ;)) (labeled_statement "LAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" statement_identifier : (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" identifier = (cast_expression "(byte *)lVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" if (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) )) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }" { (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;)) }) (else_clause "else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" else (compound_statement "{\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" { (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" if (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" ( (binary_expression "local_b0 < (local_b4 < uVar19)" identifier < (parenthesized_expression "(local_b4 < uVar19)" ( (binary_expression "local_b4 < uVar19" identifier < identifier) ))) )) (compound_statement "{\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" { (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier = (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n",5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" identifier (argument_list "(uVar12,uVar19,uVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005d3fb;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)local_a4[uVar19 - 1];" (assignment_expression "pcVar6 = (char *)local_a4[uVar19 - 1]" identifier = (cast_expression "(char *)local_a4[uVar19 - 1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a4[uVar19 - 1]" identifier [ (binary_expression "uVar19 - 1" identifier - number_literal) ]))) ;) }))) (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;" if (parenthesized_expression "((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))" ( (binary_expression "(DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c)" (parenthesized_expression "(DAT_000b9da4 != 0)" ( (binary_expression "DAT_000b9da4 != 0" identifier != number_literal) )) || (parenthesized_expression "(sVar8 = strlen(pcVar6), sVar8 < 0x4c)" ( (comma_expression "sVar8 = strlen(pcVar6), sVar8 < 0x4c" (assignment_expression "sVar8 = strlen(pcVar6)" identifier = (call_expression "strlen(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) , (binary_expression "sVar8 < 0x4c" identifier < number_literal)) ))) )) (goto_statement "goto LAB_0005cd63;" goto statement_identifier ;)) (expression_statement "printf("%s:\n",uVar11);" (call_expression "printf("%s:\n",uVar11)" identifier (argument_list "("%s:\n",uVar11)" ( (string_literal ""%s:\n"" " string_content escape_sequence ") , identifier ))) ;) }))) }) (else_clause "else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" else (compound_statement "{\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "pbVar16 = pbVar16 + 2;" (assignment_expression "pbVar16 = pbVar16 + 2" identifier = (binary_expression "pbVar16 + 2" identifier + number_literal)) ;) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }) (else_clause "else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" else (compound_statement "{\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" { (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar15 = (byte *)(uVar19 + local_90);" (assignment_expression "pbVar15 = (byte *)(uVar19 + local_90)" identifier = (cast_expression "(byte *)(uVar19 + local_90)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar19 + local_90)" ( (binary_expression "uVar19 + local_90" identifier + identifier) )))) ;) (expression_statement "pbVar16 = pbVar15;" (assignment_expression "pbVar16 = pbVar15" identifier = identifier) ;) (if_statement "if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" if (parenthesized_expression "(pbVar15 < pbVar5)" ( (binary_expression "pbVar15 < pbVar5" identifier < identifier) )) (compound_statement "{\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" statement_identifier : (expression_statement "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "local_ac = (undefined4 *)(uVar19 & 0xff);" (assignment_expression "local_ac = (undefined4 *)(uVar19 & 0xff)" identifier = (cast_expression "(undefined4 *)(uVar19 & 0xff)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar19 & 0xff)" ( (binary_expression "uVar19 & 0xff" identifier & number_literal) )))) ;) (if_statement "if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" if (parenthesized_expression "(local_ac != (undefined4 *)0x0)" ( (binary_expression "local_ac != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" identifier = number_literal) ;) (do_statement "do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);" do (compound_statement "{\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" { (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" identifier (argument_list "(pbVar16,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" identifier (argument_list "(pbVar16,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" identifier = (binary_expression "0xfffffffe < uVar19" number_literal < identifier)) ;) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" identifier = (binary_expression "iVar14 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar14 != 0 || local_ac != (undefined4 *)uVar19)" ( (binary_expression "iVar14 != 0 || local_ac != (undefined4 *)uVar19" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "local_ac != (undefined4 *)uVar19" identifier != (cast_expression "(undefined4 *)uVar19" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) ;) })) }) (else_clause "else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" else (compound_statement "{\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" { (expression_statement "iVar14 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar14 - 1U < 8) goto LAB_0005d415;" if (parenthesized_expression "(iVar14 - 1U < 8)" ( (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005d415;" goto statement_identifier ;)) (expression_statement "local_ac = (undefined4 *)0x0;" (assignment_expression "local_ac = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "local_bc = (byte *)&local_44;" (assignment_expression "local_bc = (byte *)&local_44" identifier = (cast_expression "(byte *)&local_44" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_44" & identifier))) ;) (expression_statement "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" { (expression_statement "pcVar6 = "Corrupt directories list\n";" (assignment_expression "pcVar6 = "Corrupt directories list\n"" identifier = (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2)" identifier = (cast_expression "(undefined4 *)FUN_0006b190((int)lVar28 << 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190((int)lVar28 << 2)" identifier (argument_list "((int)lVar28 << 2)" ( (binary_expression "(int)lVar28 << 2" (cast_expression "(int)lVar28" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))))) ;) (if_statement "if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" if (parenthesized_expression "(lVar28 != 0)" ( (binary_expression "lVar28 != 0" identifier != number_literal) )) (compound_statement "{\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" { (expression_statement "local_9c = (byte *)0x0;" (assignment_expression "local_9c = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (do_statement "do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));" do (compound_statement "{\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              }" { (if_statement "if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" if (parenthesized_expression "(local_ac != (undefined4 *)0x0)" ( (binary_expression "local_ac != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = pbVar15;" (assignment_expression "local_b8 = pbVar15" identifier = identifier) ;) (do_statement "do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);" do (compound_statement "{\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  }" { (expression_statement "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier (argument_list "(local_b8,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" identifier = (binary_expression "local_b8 + local_44" identifier + identifier)) ;) (expression_statement "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier (argument_list "(local_b8,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" identifier = (binary_expression "local_b8 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" { (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005c9e0;" goto statement_identifier ;) })) (if_statement "if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" if (parenthesized_expression "(lVar29 == 1)" ( (binary_expression "lVar29 == 1" identifier == number_literal) )) (compound_statement "{\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" { (if_statement "if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" if (parenthesized_expression "(lVar30 == 8)" ( (binary_expression "lVar30 == 8" identifier == number_literal) )) (compound_statement "{\n                        local_a4[(int)local_9c] = pbVar16;\n                      }" { (expression_statement "local_a4[(int)local_9c] = pbVar16;" (assignment_expression "local_a4[(int)local_9c] = pbVar16" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) }) (else_clause "else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" else (if_statement "if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" if (parenthesized_expression "(lVar30 == 0x1f)" ( (binary_expression "lVar30 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" { (if_statement "if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" if (parenthesized_expression "(local_20[0] < 9)" ( (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }" { (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" if (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" ( (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" identifier + (subscript_expression "local_20[0]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }" { (labeled_statement "LAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto LAB_0005c934;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005c934;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" else (compound_statement "{\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" { (labeled_statement "LAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" statement_identifier : (if_statement "if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" if (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) (compound_statement "{\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005c92c;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" else (compound_statement "{\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" { (expression_statement "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" identifier = (call_expression "dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" identifier (argument_list "(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" ( (binary_expression "pbVar5 <= pbVar16 + 8" identifier <= (binary_expression "pbVar16 + 8" identifier + number_literal)) )) (goto_statement "goto LAB_0005c920;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);" statement_identifier : (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,uVar19)" ( identifier , identifier ))) ;)) }))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" identifier = (call_expression "FUN_0004e690()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_a4[(int)local_9c] = uVar11;" (assignment_expression "local_a4[(int)local_9c] = uVar11" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) })))) })) (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" identifier = (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" identifier (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" ( number_literal , number_literal , identifier , identifier , number_literal , number_literal , number_literal , number_literal , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal , (binary_expression "local_38 & 0xffff" identifier & number_literal) , number_literal , number_literal , identifier , number_literal , number_literal ))))) ;) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_ac != (undefined4 *)local_94)" ( (binary_expression "local_ac != (undefined4 *)local_94" identifier != (cast_expression "(undefined4 *)local_94" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) ;) })) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" { (labeled_statement "LAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if (local_60 < pbVar5) goto LAB_0005ca09;" if (parenthesized_expression "(local_60 < pbVar5)" ( (binary_expression "local_60 < pbVar5" identifier < identifier) )) (goto_statement "goto LAB_0005ca09;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ccd9;" goto statement_identifier ;) })) (expression_statement "bVar21 = 0xfffffffe < local_9c;" (assignment_expression "bVar21 = 0xfffffffe < local_9c" identifier = (binary_expression "0xfffffffe < local_9c" number_literal < identifier)) ;) (expression_statement "local_9c = (byte *)((int)local_9c + 1);" (assignment_expression "local_9c = (byte *)((int)local_9c + 1)" identifier = (cast_expression "(byte *)((int)local_9c + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_9c + 1)" ( (binary_expression "(int)local_9c + 1" (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_98 = local_98 + (uint)bVar21;" (assignment_expression "local_98 = local_98 + (uint)bVar21" identifier = (binary_expression "local_98 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(lVar28 != CONCAT44(local_98,local_9c))" ( (binary_expression "lVar28 != CONCAT44(local_98,local_9c)" identifier != (call_expression "CONCAT44(local_98,local_9c)" identifier (argument_list "(local_98,local_9c)" ( identifier , identifier )))) )) ;) })) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" if (parenthesized_expression "(local_60 < pbVar5)" ( (binary_expression "local_60 < pbVar5" identifier < identifier) )) (compound_statement "{\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }" { (labeled_statement "LAB_0005ca09:\n              iVar14 = 1;" statement_identifier : (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;)) (labeled_statement "LAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" statement_identifier : (expression_statement "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "local_7c = local_7c & 0xff;" (assignment_expression "local_7c = local_7c & 0xff" identifier = (binary_expression "local_7c & 0xff" identifier & number_literal)) ;) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" identifier = identifier) ;) (if_statement "if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" if (parenthesized_expression "(local_7c != 0)" ( (binary_expression "local_7c != 0" identifier != number_literal) )) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" identifier = number_literal) ;) (do_statement "do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);" do (compound_statement "{\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" { (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" identifier = (binary_expression "0xfffffffe < uVar19" number_literal < identifier)) ;) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" identifier = (binary_expression "iVar14 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar14 != 0 || local_7c != uVar19)" ( (binary_expression "iVar14 != 0 || local_7c != uVar19" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "local_7c != uVar19" identifier != identifier)) )) ;) })) }) (else_clause "else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" else (compound_statement "{\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" { (if_statement "if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;" if (parenthesized_expression "((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))" ( (binary_expression "(pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_0005ca0e;" goto statement_identifier ;)) (labeled_statement "LAB_0005ccd9:\n              local_7c = 0;" statement_identifier : (expression_statement "local_7c = 0;" (assignment_expression "local_7c = 0" identifier = number_literal) ;)) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" identifier = identifier) ;) }))) (expression_statement "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" { (expression_statement "pcVar6 = "Corrupt file name list\n";" (assignment_expression "pcVar6 = "Corrupt file name list\n"" identifier = (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" identifier = (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return local_58;" return identifier ;) })) (expression_statement "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);" (assignment_expression "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4)" identifier = (cast_expression "(byte *)FUN_0006b1d0(1,local_94 << 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b1d0(1,local_94 << 4)" identifier (argument_list "(1,local_94 << 4)" ( number_literal , (binary_expression "local_94 << 4" identifier << number_literal) ))))) ;) (if_statement "if (local_94 == 0) goto LAB_0005cd50;" if (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;)) (expression_statement "local_ac = (undefined4 *)((int)local_b8 + 4);" (assignment_expression "local_ac = (undefined4 *)((int)local_b8 + 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_78 = 0;" (assignment_expression "local_78 = 0" identifier = number_literal) ;) (do_statement "do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);" do (compound_statement "{\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            }" { (if_statement "if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" if (parenthesized_expression "(local_7c != 0)" ( (binary_expression "local_7c != 0" identifier != number_literal) )) (compound_statement "{\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" { (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" identifier = number_literal) ;) (expression_statement "local_9c = local_60;" (assignment_expression "local_9c = local_60" identifier = identifier) ;) (do_statement "do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);" do (compound_statement "{\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                }" { (expression_statement "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier (argument_list "(local_9c,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" identifier = (binary_expression "local_9c + local_44" identifier + identifier)) ;) (expression_statement "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier (argument_list "(local_9c,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" identifier = (binary_expression "local_9c + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" { (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd30;" goto statement_identifier ;) })) (if_statement "if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" if (parenthesized_expression "(lVar29 == 1)" ( (binary_expression "lVar29 == 1" identifier == number_literal) )) (compound_statement "{\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }" { (if_statement "if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 8)" ( (binary_expression "lVar30 == 8" identifier == number_literal) )) (compound_statement "{\n                      local_ac[-1] = pbVar16;\n                    }" { (expression_statement "local_ac[-1] = pbVar16;" (assignment_expression "local_ac[-1] = pbVar16" (subscript_expression "local_ac[-1]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" else (if_statement "if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0x1f)" ( (binary_expression "lVar30 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" { (if_statement "if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" if (parenthesized_expression "(local_20[0] < 9)" ( (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }" { (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" if (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" ( (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" identifier + (subscript_expression "local_20[0]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }" { (labeled_statement "LAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto LAB_0005cc55;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005cc55;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" else (compound_statement "{\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" { (labeled_statement "LAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" statement_identifier : (if_statement "if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" if (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) (compound_statement "{\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005cc49;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" else (compound_statement "{\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" { (expression_statement "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" identifier = (call_expression "dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" identifier (argument_list "(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" ( (binary_expression "pbVar5 <= pbVar16 + 8" identifier <= (binary_expression "pbVar16 + 8" identifier + number_literal)) )) (goto_statement "goto LAB_0005cc3d;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);" statement_identifier : (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,uVar19)" ( identifier , identifier ))) ;)) }))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" identifier = (call_expression "FUN_0004e690()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_ac[-1] = uVar11;" (assignment_expression "local_ac[-1] = uVar11" (subscript_expression "local_ac[-1]" identifier [ number_literal ]) = identifier) ;) })))) }) (else_clause "else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" else (if_statement "if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" if (parenthesized_expression "(lVar29 == 2)" ( (binary_expression "lVar29 == 2" identifier == number_literal) )) (compound_statement "{\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" { (if_statement "if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0xb)" ( (binary_expression "lVar30 == 0xb" identifier == number_literal) )) (compound_statement "{\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" { (if_statement "if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" if (parenthesized_expression "(pbVar16 + 1 < pbVar5)" ( (binary_expression "pbVar16 + 1 < pbVar5" (binary_expression "pbVar16 + 1" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar14 = 1;\n                      }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) }) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" else (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" if (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" ( (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) || (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar14 - 1U" number_literal < (binary_expression "iVar14 - 1U" identifier - number_literal))) ))) )) (compound_statement "{\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" { (labeled_statement "LAB_0005ce4f:\n                        *local_ac = 0;" statement_identifier : (expression_statement "*local_ac = 0;" (assignment_expression "*local_ac = 0" (pointer_expression "*local_ac" * identifier) = number_literal) ;)) (goto_statement "goto LAB_0005cb51;" goto statement_identifier ;) })))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) }) (else_clause "else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" else (if_statement "if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0xf)" ( (binary_expression "lVar30 == 0xf" identifier == number_literal) )) (compound_statement "{\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }" { (expression_statement "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,0,0,pbVar5)" identifier (argument_list "(pbVar16,0,0,pbVar5)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) }) (else_clause "else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" else (if_statement "if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 5)" ( (binary_expression "lVar30 == 5" identifier == number_literal) )) (compound_statement "{\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" { (if_statement "if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" if (parenthesized_expression "(pbVar16 + 2 < pbVar5)" ( (binary_expression "pbVar16 + 2 < pbVar5" (binary_expression "pbVar16 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar14 = 2;\n                      }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) }) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" else (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" if (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" ( (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) || (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar14 - 1U" number_literal < (binary_expression "iVar14 - 1U" identifier - number_literal))) ))) )) (goto_statement "goto LAB_0005ce4f;" goto statement_identifier ;)))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) })))))) })))) (labeled_statement "LAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" statement_identifier : (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" identifier = (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" identifier (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" ( number_literal , number_literal , identifier , identifier , number_literal , number_literal , number_literal , number_literal , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal , (binary_expression "local_38 & 0xffff" identifier & number_literal) , number_literal , number_literal , identifier , number_literal , number_literal ))))) ;)) (expression_statement "local_8c = local_8c + 1;" (assignment_expression "local_8c = local_8c + 1" identifier = (binary_expression "local_8c + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_7c != local_8c)" ( (binary_expression "local_7c != local_8c" identifier != identifier) )) ;) })) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" { (labeled_statement "LAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;) })) (expression_statement "local_78 = local_78 + 1;" (assignment_expression "local_78 = local_78 + 1" identifier = (binary_expression "local_78 + 1" identifier + number_literal)) ;) (expression_statement "local_ac = local_ac + 4;" (assignment_expression "local_ac = local_ac + 4" identifier = (binary_expression "local_ac + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 != local_94)" ( (binary_expression "local_78 != local_94" identifier != identifier) )) ;) (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar19 != 0) goto LAB_0005cdc0;" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0005cdc0;" goto statement_identifier ;)) (labeled_statement "LAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;" statement_identifier : (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "pcVar6 = ".";" (assignment_expression "pcVar6 = "."" identifier = (string_literal ""."" " string_content ")) ;) (labeled_statement "LAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s/%s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s/%s:\n",5)" identifier (argument_list "(0,"CU: %s/%s:\n",5)" ( number_literal , (string_literal ""CU: %s/%s:\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar9,pcVar6,uVar11);" (call_expression "printf(pcVar9,pcVar6,uVar11)" identifier (argument_list "(pcVar9,pcVar6,uVar11)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" identifier (argument_list "(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" ( number_literal , (string_literal ""File name                            Line number    Starting address    View\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b75e0 = local_40;" (assignment_expression "DAT_000b75e0 = local_40" identifier = identifier) ;) (expression_statement "DAT_000b75e4 = local_3c;" (assignment_expression "DAT_000b75e4 = local_3c" identifier = identifier) ;) (expression_statement "DAT_000b75e8 = local_38;" (assignment_expression "DAT_000b75e8 = local_38" identifier = identifier) ;) (expression_statement "DAT_000b75ec = local_34;" (assignment_expression "DAT_000b75ec = local_34" identifier = identifier) ;) (expression_statement "DAT_000b75f0 = local_30;" (assignment_expression "DAT_000b75f0 = local_30" identifier = identifier) ;) (expression_statement "DAT_000b75f4 = local_2c;" (assignment_expression "DAT_000b75f4 = local_2c" identifier = identifier) ;) (expression_statement "DAT_000b75f8 = local_28;" (assignment_expression "DAT_000b75f8 = local_28" identifier = identifier) ;) (expression_statement "DAT_000b75fc = local_24;" (assignment_expression "DAT_000b75fc = local_24" identifier = identifier) ;) (expression_statement "DAT_000b7600 = local_20[0];" (assignment_expression "DAT_000b7600 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_bc = pbVar16;" (assignment_expression "local_bc = pbVar16" identifier = identifier) ;) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" if (parenthesized_expression "(pbVar16 < local_48)" ( (binary_expression "pbVar16 < local_48" identifier < identifier) )) (compound_statement "{\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" { (labeled_statement "LAB_0005ad11:\n            lVar29 = lVar30;" statement_identifier : (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" identifier = identifier) ;)) (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" identifier = (cast_expression "(byte *)lVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pbVar20 = local_bc + 1;" (assignment_expression "pbVar20 = local_bc + 1" identifier = (binary_expression "local_bc + 1" identifier + number_literal)) ;) (expression_statement "bVar13 = *local_bc;" (assignment_expression "bVar13 = *local_bc" identifier = (pointer_expression "*local_bc" * identifier)) ;) (expression_statement "local_ac = (undefined4 *)(uint)bVar13;" (assignment_expression "local_ac = (undefined4 *)(uint)bVar13" identifier = (cast_expression "(undefined4 *)(uint)bVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" if (parenthesized_expression "(local_24._1_1_ <= bVar13)" ( (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" identifier . field_identifier) <= identifier) )) (compound_statement "{\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" { (expression_statement "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;" (assignment_expression "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" identifier = (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_" (cast_expression "(ushort)bVar13" ( (type_descriptor "ushort" type_identifier) ) identifier) - (cast_expression "(ushort)local_24._1_1_" ( (type_descriptor "ushort" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) & number_literal)) ;) (expression_statement "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);" (assignment_expression "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24)" identifier = (call_expression "(byte)(uVar4 % (ushort)(byte)local_24)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 % (ushort)(byte)local_24)" ( (binary_expression "uVar4 % (ushort)(byte)local_24" identifier % (cast_expression "(ushort)(byte)local_24" ( (type_descriptor "ushort" type_identifier) ) (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier))) )))) ;) (expression_statement "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;" (assignment_expression "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" identifier = (binary_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" (call_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24))" identifier (argument_list "(bVar13,(char)(uVar4 / (byte)local_24))" ( identifier , (cast_expression "(char)(uVar4 / (byte)local_24)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(uVar4 / (byte)local_24)" ( (binary_expression "uVar4 / (byte)local_24" identifier / (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ))) & number_literal)) ;) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" if (parenthesized_expression "(local_2c._1_1_ != 1)" ( (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" { (expression_statement "uVar7 = (byte)DAT_000b9d20 + uVar19;" (assignment_expression "uVar7 = (byte)DAT_000b9d20 + uVar19" identifier = (binary_expression "(byte)DAT_000b9d20 + uVar19" (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier) + identifier)) ;) (expression_statement "uVar19 = uVar7 / local_2c._1_1_;" (assignment_expression "uVar19 = uVar7 / local_2c._1_1_" identifier = (binary_expression "uVar7 / local_2c._1_1_" identifier / (field_expression "local_2c._1_1_" identifier . field_identifier))) ;) (expression_statement "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);" (assignment_expression "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_)" identifier = (call_expression "(undefined1)(uVar7 % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(uVar7 % (uint)local_2c._1_1_)" ( (binary_expression "uVar7 % (uint)local_2c._1_1_" identifier % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88)" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_88)" identifier (argument_list "(DAT_000b9d20._1_1_,local_88)" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , identifier )))) ;) })) (expression_statement "uVar19 = uVar19 * (local_2c & 0xff);" (assignment_expression "uVar19 = uVar19 * (local_2c & 0xff)" identifier = (binary_expression "uVar19 * (local_2c & 0xff)" identifier * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28" identifier = (binary_expression "DAT_000b9d10 + (uint)bVar13 + local_28" (binary_expression "DAT_000b9d10 + (uint)bVar13" identifier + (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) + identifier)) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;) })) (switch_statement "switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" switch (parenthesized_expression "(local_ac)" ( identifier )) (compound_statement "{\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" { (case_statement "case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;" case (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,local_48)" identifier (argument_list "(pbVar20,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (if_statement "if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" { (expression_statement "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5)" identifier = (call_expression "dcgettext(0,"Badly formed extended line op encountered!\n",5)" identifier (argument_list "(0,"Badly formed extended line op encountered!\n",5)" ( number_literal , (string_literal ""Badly formed extended line op encountered!\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;) })) (expression_statement "pbVar16 = pbVar20 + local_44;" (assignment_expression "pbVar16 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "local_bc = pbVar20 + local_44 + iVar14;" (assignment_expression "local_bc = pbVar20 + local_44 + iVar14" identifier = (binary_expression "pbVar20 + local_44 + iVar14" (binary_expression "pbVar20 + local_44" identifier + identifier) + identifier)) ;) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (expression_statement "uVar19 = (uint)*pbVar16;" (assignment_expression "uVar19 = (uint)*pbVar16" identifier = (binary_expression "(uint)*pbVar16" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (switch_statement "switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" switch (parenthesized_expression "(uVar19)" ( identifier )) (compound_statement "{\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (case_statement "default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);" default : (expression_statement "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier (argument_list "(0,"UNKNOWN (%u): length %d\n",5)" ( number_literal , (string_literal ""UNKNOWN (%u): length %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19,iVar14);" (call_expression "printf(pcVar6,uVar19,iVar14)" identifier (argument_list "(pcVar6,uVar19,iVar14)" ( identifier , identifier , identifier ))) ;)) (case_statement "case 1:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;" case number_literal : (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (if_statement "if (uVar19 != 1) break;" if (parenthesized_expression "(uVar19 != 1)" ( (binary_expression "uVar19 != 1" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "local_ac = (undefined4 *)0xffffffff;" (assignment_expression "local_ac = (undefined4 *)0xffffffff" identifier = (cast_expression "(undefined4 *)0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;)) (case_statement "case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;" case number_literal : (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" identifier = (binary_expression "iVar14 - 1" identifier - number_literal)) ;) (if_statement "if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" if (parenthesized_expression "(uVar19 < 9)" ( (binary_expression "uVar19 < 9" identifier < number_literal) )) (compound_statement "{\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }" { (if_statement "if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (compound_statement "{\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }" { (labeled_statement "code_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto code_r0x0005b218;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto code_r0x0005b218;" goto statement_identifier ;))) }) (else_clause "else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" else (compound_statement "{\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" { (labeled_statement "code_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" statement_identifier : (if_statement "if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" if (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) (compound_statement "{\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto code_r0x0005b20c;" goto statement_identifier ;) }))) }))) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" else (compound_statement "{\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" { (expression_statement "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);" (assignment_expression "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" identifier = (call_expression "dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" identifier (argument_list "(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , identifier , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 9)" ( (binary_expression "pbVar5 <= pbVar16 + 9" identifier <= (binary_expression "pbVar16 + 9" identifier + number_literal)) )) (goto_statement "goto code_r0x0005b1f6;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "code_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" statement_identifier : (expression_statement "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" (assignment_expression "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,uVar19)" ( identifier , identifier )))) ;)) }))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" case number_literal : (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (expression_statement "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10)" identifier = (cast_expression "(byte *)FUN_0006b220(local_b8,local_94 * 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b220(local_b8,local_94 * 0x10)" identifier (argument_list "(local_b8,local_94 * 0x10)" ( identifier , (binary_expression "local_94 * 0x10" identifier * number_literal) ))))) ;) (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" identifier = (binary_expression "DAT_000b9d24 + 1" identifier + number_literal)) ;) (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + (local_94 * 4 + -4) * 4)" ( (binary_expression "(int)local_b8 + (local_94 * 4 + -4) * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(local_94 * 4 + -4) * 4" (parenthesized_expression "(local_94 * 4 + -4)" ( (binary_expression "local_94 * 4 + -4" (binary_expression "local_94 * 4" identifier * number_literal) + number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strlen((char *)pbVar20);" (assignment_expression "sVar8 = strlen((char *)pbVar20)" identifier = (call_expression "strlen((char *)pbVar20)" identifier (argument_list "((char *)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = pbVar16 + sVar8 + 2;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 2" identifier = (binary_expression "pbVar16 + sVar8 + 2" (binary_expression "pbVar16 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier (argument_list "(pbVar16,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier (argument_list "(pbVar16,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" identifier (argument_list "(pbVar16 + local_44,&local_44,0,local_48)" ( (binary_expression "pbVar16 + local_44" identifier + identifier) , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;)) })) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x1:" case (cast_expression "(undefined4 *)0x1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) :) (case_statement "case (undefined4 *)0xa:" case (cast_expression "(undefined4 *)0xa" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) :) (case_statement "case (undefined4 *)0xb:\n              goto code_r0x0005af82;" case (cast_expression "(undefined4 *)0xb" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (goto_statement "goto code_r0x0005af82;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;" case (cast_expression "(undefined4 *)0x2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" if (parenthesized_expression "(local_2c._1_1_ != 1)" ( (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" { (expression_statement "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" identifier = (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" ( (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" identifier + (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier))) )) / (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier)))) ;) (expression_statement "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" identifier . field_identifier) = (call_expression "(undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" ( (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" ( (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" identifier + (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier))) )) % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (goto_statement "goto code_r0x0005ae5c;" goto statement_identifier ;) })) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (labeled_statement "code_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" statement_identifier : (expression_statement "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" (assignment_expression "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19)" identifier = (binary_expression "lVar29 + (ulonglong)(iVar14 * uVar19)" identifier + (call_expression "(ulonglong)(iVar14 * uVar19)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(iVar14 * uVar19)" ( (binary_expression "iVar14 * uVar19" identifier * identifier) ))))) ;)) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (iVar14 * uVar19 == 0) break;" if (parenthesized_expression "(iVar14 * uVar19 == 0)" ( (binary_expression "iVar14 * uVar19 == 0" (binary_expression "iVar14 * uVar19" identifier * identifier) == number_literal) )) (break_statement "break;" break ;)) (labeled_statement "code_r0x0005ae7e:\n              lVar29 = lVar30;" statement_identifier : (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" identifier = identifier) ;)) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;" case (cast_expression "(undefined4 *)0x3" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,1,pbVar5)" identifier (argument_list "(pbVar20,&local_44,1,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + iVar14;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + iVar14" identifier = (binary_expression "DAT_000b9d10 + iVar14" identifier + identifier)) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;" case (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" identifier = (binary_expression "iVar14 - 1" identifier - number_literal)) ;) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" identifier = identifier) ;) (if_statement "if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" if (parenthesized_expression "((local_b8 == (byte *)0x0) || (local_94 == 0))" ( (binary_expression "(local_b8 == (byte *)0x0) || (local_94 == 0)" (parenthesized_expression "(local_b8 == (byte *)0x0)" ( (binary_expression "local_b8 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) ))) )) (compound_statement "{\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }" { (expression_statement "pcVar6 = "\n [Use file table entry %d]\n";" (assignment_expression "pcVar6 = "\n [Use file table entry %d]\n"" identifier = (string_literal ""\n [Use file table entry %d]\n"" " escape_sequence string_content escape_sequence ")) ;) }) (else_clause "else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" else (compound_statement "{\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" { (if_statement "if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" if (parenthesized_expression "(uVar19 < local_94)" ( (binary_expression "uVar19 < local_94" identifier < identifier) )) (compound_statement "{\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" { (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" ( (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" identifier * number_literal) * number_literal)) )))) ;) (expression_statement "uVar19 = puVar17[1];" (assignment_expression "uVar19 = puVar17[1]" identifier = (subscript_expression "puVar17[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" if (parenthesized_expression "(uVar19 == 0)" ( (binary_expression "uVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (expression_statement "printf("\n./%s:[++]\n",*puVar17);" (call_expression "printf("\n./%s:[++]\n",*puVar17)" identifier (argument_list "("\n./%s:[++]\n",*puVar17)" ( (string_literal ""\n./%s:[++]\n"" " escape_sequence string_content escape_sequence ") , (pointer_expression "*puVar17" * identifier) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" else (if_statement "if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" if (parenthesized_expression "((local_a4 == (undefined4 *)0x0) || (lVar28 == 0))" ( (binary_expression "(local_a4 == (undefined4 *)0x0) || (lVar28 == 0)" (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) ))) )) (compound_statement "{\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (expression_statement "uVar11 = *puVar17;" (assignment_expression "uVar11 = *puVar17" identifier = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier (argument_list "(0,"\n [Use file %s in directory table entry %d]\n",5)" ( number_literal , (string_literal ""\n [Use file %s in directory table entry %d]\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,uVar19);" (call_expression "printf(pcVar6,uVar11,uVar19)" identifier (argument_list "(pcVar6,uVar11,uVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" else (compound_statement "{\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" if (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" ( (binary_expression "local_b0 < (local_b4 < uVar19)" identifier < (parenthesized_expression "(local_b4 < uVar19)" ( (binary_expression "local_b4 < uVar19" identifier < identifier) ))) )) (compound_statement "{\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" { (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier = (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n",5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" identifier (argument_list "(uVar12,uVar19,uVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "\n <over large directory table entry %u>\n";" (assignment_expression "pcVar6 = "\n <over large directory table entry %u>\n"" identifier = (string_literal ""\n <over large directory table entry %u>\n"" " escape_sequence string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b184;" goto statement_identifier ;) })) (expression_statement "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);" (call_expression "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" identifier (argument_list "("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" ( (string_literal ""\n%s/%s:\n"" " escape_sequence string_content escape_sequence ") , (subscript_expression "local_a4[uVar19 - 1]" identifier [ (binary_expression "uVar19 - 1" identifier - number_literal) ]) , (pointer_expression "*puVar17" * identifier) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }))))) (break_statement "break;" break ;) })) (expression_statement "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);" (assignment_expression "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5)" identifier = (call_expression "dcgettext(0,"file index %u > number of files %u\n",5)" identifier (argument_list "(0,"file index %u > number of files %u\n",5)" ( number_literal , (string_literal ""file index %u > number of files %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,iVar14,local_94);" (call_expression "warn(uVar11,iVar14,local_94)" identifier (argument_list "(uVar11,iVar14,local_94)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "\n <over large file table index %u>";" (assignment_expression "pcVar6 = "\n <over large file table index %u>"" identifier = (string_literal ""\n <over large file table index %u>"" " escape_sequence string_content ")) ;) }))) (goto_statement "goto code_r0x0005b184;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;" case (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;" case (cast_expression "(undefined4 *)0x6" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);" (assignment_expression "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0)" identifier = (call_expression "(uint)(DAT_000b9d18 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_000b9d18 == 0)" ( (binary_expression "DAT_000b9d18 == 0" identifier == number_literal) )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;" case (cast_expression "(undefined4 *)0x7" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" identifier = number_literal) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;" case (cast_expression "(undefined4 *)0x8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));" (assignment_expression "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" identifier = (cast_expression "(int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (binary_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(~(uint)local_24._1_1_ & 0xff)" ( (binary_expression "~(uint)local_24._1_1_ & 0xff" (unary_expression "~(uint)local_24._1_1_" ~ (cast_expression "(uint)local_24._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) & number_literal) ))) / (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(local_24 & 0xff)" ( (binary_expression "local_24 & 0xff" identifier & number_literal) )))) )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (if_statement "if (local_2c._1_1_ == 1) goto code_r0x0005c370;" if (parenthesized_expression "(local_2c._1_1_ == 1)" ( (binary_expression "local_2c._1_1_ == 1" (field_expression "local_2c._1_1_" identifier . field_identifier) == number_literal) )) (goto_statement "goto code_r0x0005c370;" goto statement_identifier ;)) (expression_statement "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" identifier = (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" ( (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) + identifier) )) / (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier)))) ;) (expression_statement "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" identifier . field_identifier) = (call_expression "(undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" ( (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" ( (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) + identifier) )) % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (labeled_statement "code_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;" statement_identifier : (expression_statement "uVar19 = uVar19 * uVar7;" (assignment_expression "uVar19 = uVar19 * uVar7" identifier = (binary_expression "uVar19 * uVar7" identifier * identifier)) ;)) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" identifier (argument_list "(DAT_000b9d20._1_1_,local_ac._0_1_)" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (field_expression "local_ac._0_1_" identifier . field_identifier) )))) ;) (expression_statement "lVar30 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar30 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) goto code_r0x0005ae7e;" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x0005ae7e;" goto statement_identifier ;)) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;" case (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "local_bc = local_bc + 3;" (assignment_expression "local_bc = local_bc + 3" identifier = (binary_expression "local_bc + 3" identifier + number_literal)) ;) (if_statement "if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (compound_statement "{\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) (labeled_statement "code_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" statement_identifier : (expression_statement "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" else (compound_statement "{\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" { (if_statement "if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;" if (parenthesized_expression "((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))" ( (binary_expression "(pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto code_r0x0005c4cd;" goto statement_identifier ;)) (expression_statement "uStack_84 = 0;" (assignment_expression "uStack_84 = 0" identifier = number_literal) ;) }))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uStack_84;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uStack_84" identifier = (binary_expression "lVar29 + (ulonglong)uStack_84" identifier + (cast_expression "(ulonglong)uStack_84" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(local_48 <= local_bc)" ( (binary_expression "local_48 <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;" case (cast_expression "(undefined4 *)0xc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "pcVar6 = "  Set ISA to %lu\n";" (assignment_expression "pcVar6 = "  Set ISA to %lu\n"" identifier = (string_literal ""  Set ISA to %lu\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (break_statement "break;" break ;)) (case_statement "default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" default : (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ",5)" identifier (argument_list "(0,"  Unknown opcode %d with operands: ",5)" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,local_ac);" (call_expression "printf(pcVar6,local_ac)" identifier (argument_list "(pcVar6,local_ac)" ( identifier , identifier ))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (if_statement "if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" if (parenthesized_expression "((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0))" ( (binary_expression "(local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" (parenthesized_expression "(local_90 != 0)" ( (binary_expression "local_90 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" ( (comma_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac)" identifier = (binary_expression "(uint)*(byte *)(local_90 + -1 + (int)local_ac)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_90 + -1 + (int)local_ac)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + -1 + (int)local_ac)" ( (binary_expression "local_90 + -1 + (int)local_ac" (binary_expression "local_90 + -1" identifier + number_literal) + (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) , (binary_expression "uVar19 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" { (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" for ( ; (binary_expression "uVar19 != 1" identifier != number_literal) ; (assignment_expression "uVar19 = uVar19 - 1" identifier = (binary_expression "uVar19 - 1" identifier - number_literal)) ) (compound_statement "{\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" { (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" identifier (argument_list "(local_bc,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" identifier = (binary_expression "local_bc + local_44" identifier + identifier)) ;) })) (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" identifier (argument_list "(local_bc,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" identifier = (binary_expression "local_bc + local_44" identifier + identifier)) ;) })) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "pbVar20 = local_bc;" (assignment_expression "pbVar20 = local_bc" identifier = identifier) ;) (labeled_statement "code_r0x0005af82:\n              local_bc = pbVar20;" statement_identifier : (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;)) (if_statement "if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" if (parenthesized_expression "(local_ac == (undefined4 *)0x1)" ( (binary_expression "local_ac == (undefined4 *)0x1" identifier == (cast_expression "(undefined4 *)0x1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (labeled_statement "joined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" statement_identifier : (if_statement "if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" if (parenthesized_expression "(local_b8 == (byte *)0x0)" ( (binary_expression "local_b8 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }" { (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" statement_identifier : (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" else (compound_statement "{\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" { (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = DAT_000b9d0c - 1;" (assignment_expression "uVar19 = DAT_000b9d0c - 1" identifier = (binary_expression "DAT_000b9d0c - 1" identifier - number_literal)) ;) (if_statement "if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" if (parenthesized_expression "(local_94 <= uVar19)" ( (binary_expression "local_94 <= uVar19" identifier <= identifier) )) (compound_statement "{\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" { (expression_statement "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);" (assignment_expression "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5)" identifier = (call_expression "dcgettext(0,"corrupt file index %u encountered\n",5)" identifier (argument_list "(0,"corrupt file index %u encountered\n",5)" ( number_literal , (string_literal ""corrupt file index %u encountered\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" identifier (argument_list "(uVar11,uVar19)" ( identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005afab;" goto statement_identifier ;) })) (expression_statement "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4)" identifier = (pointer_expression "*(char **)((int)local_b8 + uVar19 * 4 * 4)" * (cast_expression "(char **)((int)local_b8 + uVar19 * 4 * 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" ( (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" identifier * number_literal) * number_literal)) ))))) ;) })))) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "sVar8 = strlen(pcVar6);" (assignment_expression "sVar8 = strlen(pcVar6)" identifier = (call_expression "strlen(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (if_statement "if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" if (parenthesized_expression "(sVar8 < 0x24)" ( (binary_expression "sVar8 < 0x24" identifier < number_literal) )) (compound_statement "{\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" { (expression_statement "pcVar9 = (char *)FUN_0006b190(sVar8 + 1);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(sVar8 + 1)" identifier = (cast_expression "(char *)FUN_0006b190(sVar8 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(sVar8 + 1)" identifier (argument_list "(sVar8 + 1)" ( (binary_expression "sVar8 + 1" identifier + number_literal) ))))) ;) (expression_statement "strncpy(pcVar9,pcVar6,sVar8 + 1);" (call_expression "strncpy(pcVar9,pcVar6,sVar8 + 1)" identifier (argument_list "(pcVar9,pcVar6,sVar8 + 1)" ( identifier , identifier , (binary_expression "sVar8 + 1" identifier + number_literal) ))) ;) (labeled_statement "LAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" statement_identifier : (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" identifier (argument_list "("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" ( (string_literal ""%-35s  %11d  %#18llx"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" else (compound_statement "{\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" identifier (argument_list "("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" ( (string_literal ""%-35s  %11d  %#18llx[%d]"" " string_content ") , identifier , identifier , identifier , identifier , (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ;) })))) }) (else_clause "else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" else (compound_statement "{\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" { (if_statement "if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" if (parenthesized_expression "(DAT_000b9da4 == 0)" ( (binary_expression "DAT_000b9da4 == 0" identifier == number_literal) )) (compound_statement "{\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }" { (expression_statement "pcVar9 = (char *)FUN_0006b190(0x24);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(0x24)" identifier = (cast_expression "(char *)FUN_0006b190(0x24)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(0x24)" identifier (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "__n = 0x24;" (assignment_expression "__n = 0x24" identifier = number_literal) ;) (expression_statement "pcVar6 = pcVar6 + (sVar8 - 0x23);" (assignment_expression "pcVar6 = pcVar6 + (sVar8 - 0x23)" identifier = (binary_expression "pcVar6 + (sVar8 - 0x23)" identifier + (parenthesized_expression "(sVar8 - 0x23)" ( (binary_expression "sVar8 - 0x23" identifier - number_literal) )))) ;) }) (else_clause "else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" else (compound_statement "{\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" { (expression_statement "__n = sVar8 + 1;" (assignment_expression "__n = sVar8 + 1" identifier = (binary_expression "sVar8 + 1" identifier + number_literal)) ;) (expression_statement "pcVar9 = (char *)FUN_0006b190(__n);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(__n)" identifier = (cast_expression "(char *)FUN_0006b190(__n)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(__n)" identifier (argument_list "(__n)" ( identifier ))))) ;) }))) (expression_statement "strncpy(pcVar9,pcVar6,__n);" (call_expression "strncpy(pcVar9,pcVar6,__n)" identifier (argument_list "(pcVar9,pcVar6,__n)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9da4 == 0) goto LAB_0005ac8b;" if (parenthesized_expression "(DAT_000b9da4 == 0)" ( (binary_expression "DAT_000b9da4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005ac8b;" goto statement_identifier ;)) (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" identifier (argument_list "("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" ( (string_literal ""%s  %11d  %#18llx"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" else (compound_statement "{\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" identifier (argument_list "("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" ( (string_literal ""%s  %11d  %#18llx[%d]"" " string_content ") , identifier , identifier , identifier , identifier , (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ;) }))) }))) (if_statement "if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" if (parenthesized_expression "(DAT_000b9d08 == 0)" ( (binary_expression "DAT_000b9d08 == 0" identifier == number_literal) )) (compound_statement "{\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" else (compound_statement "{\n                  printf("  %6u\n",DAT_000b9d08);\n                }" { (expression_statement "printf("  %6u\n",DAT_000b9d08);" (call_expression "printf("  %6u\n",DAT_000b9d08)" identifier (argument_list "("  %6u\n",DAT_000b9d08)" ( (string_literal ""  %6u\n"" " string_content escape_sequence ") , identifier ))) ;) }))) (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" identifier = (binary_expression "DAT_000b9d08 + 1" identifier + number_literal)) ;) (if_statement "if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" if (parenthesized_expression "(local_ac == (undefined4 *)0xffffffff)" ( (binary_expression "local_ac == (undefined4 *)0xffffffff" identifier == (cast_expression "(undefined4 *)0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) })) (expression_statement "free(pcVar9);" (call_expression "free(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }))) })) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(local_48 <= local_bc)" ( (binary_expression "local_48 <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" statement_identifier : (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" if (parenthesized_expression "(local_b8 != (byte *)0x0)" ( (binary_expression "local_b8 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" { (expression_statement "free(local_b8);" (call_expression "free(local_b8)" identifier (argument_list "(local_b8)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) })) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" if (parenthesized_expression "(local_a4 != (undefined4 *)0x0)" ( (binary_expression "local_a4 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" { (expression_statement "free(local_a4);" (call_expression "free(local_a4)" identifier (argument_list "(local_a4)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) })) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "uVar23 = pbVar5 < local_bc;" (assignment_expression "uVar23 = pbVar5 < local_bc" identifier = (binary_expression "pbVar5 < local_bc" identifier < identifier)) ;) (expression_statement "uVar25 = pbVar5 == local_bc;" (assignment_expression "uVar25 = pbVar5 == local_bc" identifier = (binary_expression "pbVar5 == local_bc" identifier == identifier)) ;) (if_statement "if (pbVar5 <= local_bc) {\n          return local_58;\n        }" if (parenthesized_expression "(pbVar5 <= local_bc)" ( (binary_expression "pbVar5 <= local_bc" identifier <= identifier) )) (compound_statement "{\n          return local_58;\n        }" { (return_statement "return local_58;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) }) (else_clause "else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" else (if_statement "if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" if (parenthesized_expression "((DAT_000b9db0 & 2) != 0)" ( (binary_expression "(DAT_000b9db0 & 2) != 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    FUN_0004eb80();\n  }" { (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) })))) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nint display_debug_lines(dwarf_section *section,void *file)\n\n{\n  longlong lVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  ushort uVar4;\n  DWARF2_Internal_LineInfo *end;\n  char *pcVar5;\n  uint uVar6;\n  byte bVar12;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  char *pcVar10;\n  char *__format;\n  uchar *puVar11;\n  uint addrdelta;\n  dwarf_section *extraout_ECX;\n  int iVar13;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *extraout_ECX_01;\n  dwarf_section *extraout_ECX_02;\n  dwarf_section *extraout_ECX_03;\n  dwarf_section *extraout_ECX_04;\n  uchar uVar14;\n  DWARF2_Internal_LineInfo *pDVar15;\n  byte *pbVar16;\n  DWARF2_Internal_LineInfo *__string;\n  undefined4 *puVar17;\n  int iVar18;\n  byte *pbVar19;\n  uint uVar20;\n  undefined4 uVar21;\n  DWARF2_Internal_LineInfo *pDVar22;\n  bool bVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  byte bVar28;\n  dwarf_vma dVar29;\n  dwarf_vma dVar30;\n  dwarf_vma dVar31;\n  elf_vma eVar32;\n  undefined1 *puVar33;\n  dwarf_section *pdVar34;\n  uint *puVar35;\n  uint *puVar36;\n  uchar *in_stack_ffffff2c;\n  DWARF2_Internal_LineInfo *in_stack_ffffff30;\n  DWARF2_Internal_LineInfo *pDVar37;\n  uchar **in_stack_ffffff34;\n  undefined4 in_stack_ffffff38;\n  DWARF2_Internal_LineInfo *local_bc;\n  DWARF2_Internal_LineInfo *local_b8;\n  undefined8 local_b4;\n  uint local_ac;\n  int local_a8;\n  undefined4 *local_a4;\n  DWARF2_Internal_LineInfo *local_9c;\n  int local_98;\n  uchar *local_94;\n  uchar *local_90;\n  uint local_8c;\n  uchar local_88;\n  uint local_84;\n  uint local_7c;\n  uchar *local_78;\n  char *local_6c;\n  DWARF2_Internal_LineInfo *local_60;\n  int local_58;\n  undefined1 *local_54 [3];\n  uchar *end_of_sequence;\n  uint bytes_read;\n  DWARF2_Internal_LineInfo linfo;\n  \n  bVar28 = 0;\n  local_bc = (DWARF2_Internal_LineInfo *)section->start;\n  end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size);\n  if (do_debug_lines == 0) {\n    do_debug_lines = 1;\n  }\n  else if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }\n  pcVar9 = section->name;\n  if ((do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)) {\n    in_stack_ffffff2c = (uchar *)0x5;\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");\n    printf(pcVar5,pcVar9);\n  }\n  else {\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }\n  puVar3 = PTR_stdout_000b3fd8;\n  bVar23 = local_bc < end;\n  bVar26 = local_bc == end;\n  pDVar37 = local_bc;\n  if (bVar23) {\nLAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);\n    uVar25 = 0;\n    uVar27 = (do_debug_lines & 2U) == 0;\n    if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }\nLAB_0005a988:\n  uVar6 = 1;\n  dVar29 = state_machine_regs.address;\nLAB_0005a98d:\n  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n  return uVar6;\n}\n\n" comment comment (function_definition "int display_debug_lines(dwarf_section *section,void *file)\n\n{\n  longlong lVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  ushort uVar4;\n  DWARF2_Internal_LineInfo *end;\n  char *pcVar5;\n  uint uVar6;\n  byte bVar12;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  char *pcVar10;\n  char *__format;\n  uchar *puVar11;\n  uint addrdelta;\n  dwarf_section *extraout_ECX;\n  int iVar13;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *extraout_ECX_01;\n  dwarf_section *extraout_ECX_02;\n  dwarf_section *extraout_ECX_03;\n  dwarf_section *extraout_ECX_04;\n  uchar uVar14;\n  DWARF2_Internal_LineInfo *pDVar15;\n  byte *pbVar16;\n  DWARF2_Internal_LineInfo *__string;\n  undefined4 *puVar17;\n  int iVar18;\n  byte *pbVar19;\n  uint uVar20;\n  undefined4 uVar21;\n  DWARF2_Internal_LineInfo *pDVar22;\n  bool bVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  byte bVar28;\n  dwarf_vma dVar29;\n  dwarf_vma dVar30;\n  dwarf_vma dVar31;\n  elf_vma eVar32;\n  undefined1 *puVar33;\n  dwarf_section *pdVar34;\n  uint *puVar35;\n  uint *puVar36;\n  uchar *in_stack_ffffff2c;\n  DWARF2_Internal_LineInfo *in_stack_ffffff30;\n  DWARF2_Internal_LineInfo *pDVar37;\n  uchar **in_stack_ffffff34;\n  undefined4 in_stack_ffffff38;\n  DWARF2_Internal_LineInfo *local_bc;\n  DWARF2_Internal_LineInfo *local_b8;\n  undefined8 local_b4;\n  uint local_ac;\n  int local_a8;\n  undefined4 *local_a4;\n  DWARF2_Internal_LineInfo *local_9c;\n  int local_98;\n  uchar *local_94;\n  uchar *local_90;\n  uint local_8c;\n  uchar local_88;\n  uint local_84;\n  uint local_7c;\n  uchar *local_78;\n  char *local_6c;\n  DWARF2_Internal_LineInfo *local_60;\n  int local_58;\n  undefined1 *local_54 [3];\n  uchar *end_of_sequence;\n  uint bytes_read;\n  DWARF2_Internal_LineInfo linfo;\n  \n  bVar28 = 0;\n  local_bc = (DWARF2_Internal_LineInfo *)section->start;\n  end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size);\n  if (do_debug_lines == 0) {\n    do_debug_lines = 1;\n  }\n  else if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }\n  pcVar9 = section->name;\n  if ((do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)) {\n    in_stack_ffffff2c = (uchar *)0x5;\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");\n    printf(pcVar5,pcVar9);\n  }\n  else {\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }\n  puVar3 = PTR_stdout_000b3fd8;\n  bVar23 = local_bc < end;\n  bVar26 = local_bc == end;\n  pDVar37 = local_bc;\n  if (bVar23) {\nLAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);\n    uVar25 = 0;\n    uVar27 = (do_debug_lines & 2U) == 0;\n    if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }\nLAB_0005a988:\n  uVar6 = 1;\n  dVar29 = state_machine_regs.address;\nLAB_0005a98d:\n  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n  return uVar6;\n}" primitive_type (function_declarator "display_debug_lines(dwarf_section *section,void *file)" identifier (parameter_list "(dwarf_section *section,void *file)" ( (parameter_declaration "dwarf_section *section" type_identifier (pointer_declarator "*section" * identifier)) , (parameter_declaration "void *file" primitive_type (pointer_declarator "*file" * identifier)) ))) (compound_statement "{\n  longlong lVar1;\n  code *pcVar2;\n  undefined *puVar3;\n  ushort uVar4;\n  DWARF2_Internal_LineInfo *end;\n  char *pcVar5;\n  uint uVar6;\n  byte bVar12;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  char *pcVar10;\n  char *__format;\n  uchar *puVar11;\n  uint addrdelta;\n  dwarf_section *extraout_ECX;\n  int iVar13;\n  dwarf_section *extraout_ECX_00;\n  dwarf_section *extraout_ECX_01;\n  dwarf_section *extraout_ECX_02;\n  dwarf_section *extraout_ECX_03;\n  dwarf_section *extraout_ECX_04;\n  uchar uVar14;\n  DWARF2_Internal_LineInfo *pDVar15;\n  byte *pbVar16;\n  DWARF2_Internal_LineInfo *__string;\n  undefined4 *puVar17;\n  int iVar18;\n  byte *pbVar19;\n  uint uVar20;\n  undefined4 uVar21;\n  DWARF2_Internal_LineInfo *pDVar22;\n  bool bVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  bool bVar26;\n  undefined1 uVar27;\n  byte bVar28;\n  dwarf_vma dVar29;\n  dwarf_vma dVar30;\n  dwarf_vma dVar31;\n  elf_vma eVar32;\n  undefined1 *puVar33;\n  dwarf_section *pdVar34;\n  uint *puVar35;\n  uint *puVar36;\n  uchar *in_stack_ffffff2c;\n  DWARF2_Internal_LineInfo *in_stack_ffffff30;\n  DWARF2_Internal_LineInfo *pDVar37;\n  uchar **in_stack_ffffff34;\n  undefined4 in_stack_ffffff38;\n  DWARF2_Internal_LineInfo *local_bc;\n  DWARF2_Internal_LineInfo *local_b8;\n  undefined8 local_b4;\n  uint local_ac;\n  int local_a8;\n  undefined4 *local_a4;\n  DWARF2_Internal_LineInfo *local_9c;\n  int local_98;\n  uchar *local_94;\n  uchar *local_90;\n  uint local_8c;\n  uchar local_88;\n  uint local_84;\n  uint local_7c;\n  uchar *local_78;\n  char *local_6c;\n  DWARF2_Internal_LineInfo *local_60;\n  int local_58;\n  undefined1 *local_54 [3];\n  uchar *end_of_sequence;\n  uint bytes_read;\n  DWARF2_Internal_LineInfo linfo;\n  \n  bVar28 = 0;\n  local_bc = (DWARF2_Internal_LineInfo *)section->start;\n  end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size);\n  if (do_debug_lines == 0) {\n    do_debug_lines = 1;\n  }\n  else if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }\n  pcVar9 = section->name;\n  if ((do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)) {\n    in_stack_ffffff2c = (uchar *)0x5;\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");\n    printf(pcVar5,pcVar9);\n  }\n  else {\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }\n  puVar3 = PTR_stdout_000b3fd8;\n  bVar23 = local_bc < end;\n  bVar26 = local_bc == end;\n  pDVar37 = local_bc;\n  if (bVar23) {\nLAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);\n    uVar25 = 0;\n    uVar27 = (do_debug_lines & 2U) == 0;\n    if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }\nLAB_0005a988:\n  uVar6 = 1;\n  dVar29 = state_machine_regs.address;\nLAB_0005a98d:\n  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n  return uVar6;\n}" { (declaration "longlong lVar1;" type_identifier identifier ;) (declaration "code *pcVar2;" type_identifier (pointer_declarator "*pcVar2" * identifier) ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "DWARF2_Internal_LineInfo *end;" type_identifier (pointer_declarator "*end" * identifier) ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "uint uVar6;" type_identifier identifier ;) (declaration "byte bVar12;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *__format;" primitive_type (pointer_declarator "*__format" * identifier) ;) (declaration "uchar *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "uint addrdelta;" type_identifier identifier ;) (declaration "dwarf_section *extraout_ECX;" type_identifier (pointer_declarator "*extraout_ECX" * identifier) ;) (declaration "int iVar13;" primitive_type identifier ;) (declaration "dwarf_section *extraout_ECX_00;" type_identifier (pointer_declarator "*extraout_ECX_00" * identifier) ;) (declaration "dwarf_section *extraout_ECX_01;" type_identifier (pointer_declarator "*extraout_ECX_01" * identifier) ;) (declaration "dwarf_section *extraout_ECX_02;" type_identifier (pointer_declarator "*extraout_ECX_02" * identifier) ;) (declaration "dwarf_section *extraout_ECX_03;" type_identifier (pointer_declarator "*extraout_ECX_03" * identifier) ;) (declaration "dwarf_section *extraout_ECX_04;" type_identifier (pointer_declarator "*extraout_ECX_04" * identifier) ;) (declaration "uchar uVar14;" type_identifier identifier ;) (declaration "DWARF2_Internal_LineInfo *pDVar15;" type_identifier (pointer_declarator "*pDVar15" * identifier) ;) (declaration "byte *pbVar16;" type_identifier (pointer_declarator "*pbVar16" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *__string;" type_identifier (pointer_declarator "*__string" * identifier) ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "undefined4 uVar21;" type_identifier identifier ;) (declaration "DWARF2_Internal_LineInfo *pDVar22;" type_identifier (pointer_declarator "*pDVar22" * identifier) ;) (declaration "bool bVar23;" primitive_type identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "undefined1 uVar25;" type_identifier identifier ;) (declaration "bool bVar26;" primitive_type identifier ;) (declaration "undefined1 uVar27;" type_identifier identifier ;) (declaration "byte bVar28;" type_identifier identifier ;) (declaration "dwarf_vma dVar29;" type_identifier identifier ;) (declaration "dwarf_vma dVar30;" type_identifier identifier ;) (declaration "dwarf_vma dVar31;" type_identifier identifier ;) (declaration "elf_vma eVar32;" type_identifier identifier ;) (declaration "undefined1 *puVar33;" type_identifier (pointer_declarator "*puVar33" * identifier) ;) (declaration "dwarf_section *pdVar34;" type_identifier (pointer_declarator "*pdVar34" * identifier) ;) (declaration "uint *puVar35;" type_identifier (pointer_declarator "*puVar35" * identifier) ;) (declaration "uint *puVar36;" type_identifier (pointer_declarator "*puVar36" * identifier) ;) (declaration "uchar *in_stack_ffffff2c;" type_identifier (pointer_declarator "*in_stack_ffffff2c" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *in_stack_ffffff30;" type_identifier (pointer_declarator "*in_stack_ffffff30" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *pDVar37;" type_identifier (pointer_declarator "*pDVar37" * identifier) ;) (declaration "uchar **in_stack_ffffff34;" type_identifier (pointer_declarator "**in_stack_ffffff34" * (pointer_declarator "*in_stack_ffffff34" * identifier)) ;) (declaration "undefined4 in_stack_ffffff38;" type_identifier identifier ;) (declaration "DWARF2_Internal_LineInfo *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "undefined8 local_b4;" type_identifier identifier ;) (declaration "uint local_ac;" type_identifier identifier ;) (declaration "int local_a8;" primitive_type identifier ;) (declaration "undefined4 *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *local_9c;" type_identifier (pointer_declarator "*local_9c" * identifier) ;) (declaration "int local_98;" primitive_type identifier ;) (declaration "uchar *local_94;" type_identifier (pointer_declarator "*local_94" * identifier) ;) (declaration "uchar *local_90;" type_identifier (pointer_declarator "*local_90" * identifier) ;) (declaration "uint local_8c;" type_identifier identifier ;) (declaration "uchar local_88;" type_identifier identifier ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uchar *local_78;" type_identifier (pointer_declarator "*local_78" * identifier) ;) (declaration "char *local_6c;" primitive_type (pointer_declarator "*local_6c" * identifier) ;) (declaration "DWARF2_Internal_LineInfo *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "undefined1 *local_54 [3];" type_identifier (pointer_declarator "*local_54 [3]" * (array_declarator "local_54 [3]" identifier [ number_literal ])) ;) (declaration "uchar *end_of_sequence;" type_identifier (pointer_declarator "*end_of_sequence" * identifier) ;) (declaration "uint bytes_read;" type_identifier identifier ;) (declaration "DWARF2_Internal_LineInfo linfo;" type_identifier identifier ;) (expression_statement "bVar28 = 0;" (assignment_expression "bVar28 = 0" identifier = number_literal) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)section->start;" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)section->start" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)section->start" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->start" identifier -> field_identifier))) ;) (expression_statement "end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size);" (assignment_expression "end = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + (int)section->size)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_bc->li_length + (int)section->size)" ( (binary_expression "(int)&local_bc->li_length + (int)section->size" (cast_expression "(int)&local_bc->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_bc->li_length" & (field_expression "local_bc->li_length" identifier -> field_identifier))) + (cast_expression "(int)section->size" ( (type_descriptor "int" primitive_type) ) (field_expression "section->size" identifier -> field_identifier))) )))) ;) (if_statement "if (do_debug_lines == 0) {\n    do_debug_lines = 1;\n  }\n  else if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }" if (parenthesized_expression "(do_debug_lines == 0)" ( (binary_expression "do_debug_lines == 0" identifier == number_literal) )) (compound_statement "{\n    do_debug_lines = 1;\n  }" { (expression_statement "do_debug_lines = 1;" (assignment_expression "do_debug_lines = 1" identifier = number_literal) ;) }) (else_clause "else if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }" else (if_statement "if ((do_debug_lines & 1U) == 0) {\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }" if (parenthesized_expression "((do_debug_lines & 1U) == 0)" ( (binary_expression "(do_debug_lines & 1U) == 0" (parenthesized_expression "(do_debug_lines & 1U)" ( (binary_expression "do_debug_lines & 1U" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }\n    goto LAB_0005a988;\n  }" { (if_statement "if ((do_debug_lines & 2U) != 0) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }" if (parenthesized_expression "((do_debug_lines & 2U) != 0)" ( (binary_expression "(do_debug_lines & 2U) != 0" (parenthesized_expression "(do_debug_lines & 2U)" ( (binary_expression "do_debug_lines & 2U" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);\n      uVar25 = local_bc < end;\n      uVar27 = local_bc == end;\n      if (!(bool)uVar25) goto LAB_0005a988;\n      local_58 = 1;\n      goto LAB_0005a9d0;\n    }" { (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)0x5a9b2" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5a9b2" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines);" (call_expression "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines)" identifier (argument_list "((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n                (dwarf_section *)&do_debug_lines)" ( (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)) , (cast_expression "(dwarf_section *)&do_debug_lines" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&do_debug_lines" & identifier)) ))) ;) (expression_statement "uVar25 = local_bc < end;" (assignment_expression "uVar25 = local_bc < end" identifier = (binary_expression "local_bc < end" identifier < identifier)) ;) (expression_statement "uVar27 = local_bc == end;" (assignment_expression "uVar27 = local_bc == end" identifier = (binary_expression "local_bc == end" identifier == identifier)) ;) (if_statement "if (!(bool)uVar25) goto LAB_0005a988;" if (parenthesized_expression "(!(bool)uVar25)" ( (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (goto_statement "goto LAB_0005a988;" goto statement_identifier ;)) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })) (goto_statement "goto LAB_0005a988;" goto statement_identifier ;) })))) (expression_statement "pcVar9 = section->name;" (assignment_expression "pcVar9 = section->name" identifier = (field_expression "section->name" identifier -> field_identifier)) ;) (if_statement "if ((do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)) {\n    in_stack_ffffff2c = (uchar *)0x5;\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");\n    printf(pcVar5,pcVar9);\n  }\n  else {\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }" if (parenthesized_expression "((do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0))" ( (binary_expression "(do_follow_links == 0) ||\n     (in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)" (parenthesized_expression "(do_follow_links == 0)" ( (binary_expression "do_follow_links == 0" identifier == number_literal) )) || (parenthesized_expression "(in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0)" ( (comma_expression "in_stack_ffffff2c = (uchar *)section->filename, in_stack_ffffff2c == (uchar *)0x0" (assignment_expression "in_stack_ffffff2c = (uchar *)section->filename" identifier = (cast_expression "(uchar *)section->filename" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->filename" identifier -> field_identifier))) , (binary_expression "in_stack_ffffff2c == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n    in_stack_ffffff2c = (uchar *)0x5;\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");\n    printf(pcVar5,pcVar9);\n  }" { (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n");" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n")" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s:\n\n")" identifier (argument_list "(0,"Raw dump of debug contents of section %s:\n\n")" ( number_literal , (string_literal ""Raw dump of debug contents of section %s:\n\n"" " string_content escape_sequence escape_sequence ") ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }" else (compound_statement "{\n    pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar5,pcVar9);\n  }" { (expression_statement "pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier (argument_list "(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( number_literal , (string_literal ""Raw dump of debug contents of section %s (loaded from %s):\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) }))) (expression_statement "puVar3 = PTR_stdout_000b3fd8;" (assignment_expression "puVar3 = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "bVar23 = local_bc < end;" (assignment_expression "bVar23 = local_bc < end" identifier = (binary_expression "local_bc < end" identifier < identifier)) ;) (expression_statement "bVar26 = local_bc == end;" (assignment_expression "bVar26 = local_bc == end" identifier = (binary_expression "local_bc == end" identifier == identifier)) ;) (expression_statement "pDVar37 = local_bc;" (assignment_expression "pDVar37 = local_bc" identifier = identifier) ;) (if_statement "if (bVar23) {\nLAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);\n    uVar25 = 0;\n    uVar27 = (do_debug_lines & 2U) == 0;\n    if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }" if (parenthesized_expression "(bVar23)" ( identifier )) (compound_statement "{\nLAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);\n    uVar25 = 0;\n    uVar27 = (do_debug_lines & 2U) == 0;\n    if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }\n  }" { (labeled_statement "LAB_0005b368:\n    do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);" statement_identifier : (do_statement "do {\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    } while (pDVar37 < end);" do (compound_statement "{\n      iVar13 = 0xc;\n      pbVar16 = (byte *)section->name;\n      pbVar19 = (byte *)".debug_line.";\n      do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);\n      bVar24 = false;\n      bVar23 = (!bVar23 && !bVar26) == bVar23;\n      if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }\n      linfo.li_length._0_4_ = saved_linfo_11144;\n      linfo.li_length._4_4_ = DAT_000b7624;\n      linfo._8_4_ = DAT_000b7628;\n      linfo.li_prologue_length._0_4_ = DAT_000b762c;\n      linfo.li_prologue_length._4_4_ = DAT_000b7630;\n      linfo._20_4_ = DAT_000b7634;\n      linfo.li_line_base = DAT_000b7638;\n      linfo._28_4_ = DAT_000b763c;\n      linfo.li_offset_size = DAT_000b7640;\n      if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }\n      in_stack_ffffff2c = (uchar *)0x5;\n      pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");\n      printf(pcVar9);\n      bVar23 = end < pDVar37;\n      bVar26 = end == pDVar37;\n      pdVar34 = extraout_ECX;\n    }" { (expression_statement "iVar13 = 0xc;" (assignment_expression "iVar13 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar16 = (byte *)section->name;" (assignment_expression "pbVar16 = (byte *)section->name" identifier = (cast_expression "(byte *)section->name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pbVar19 = (byte *)".debug_line.";" (assignment_expression "pbVar19 = (byte *)".debug_line."" identifier = (cast_expression "(byte *)".debug_line."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line."" " string_content "))) ;) (do_statement "do {\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      } while (bVar26);" do (compound_statement "{\n        if (iVar13 == 0) break;\n        iVar13 = iVar13 + -1;\n        bVar23 = *pbVar16 < *pbVar19;\n        bVar26 = *pbVar16 == *pbVar19;\n        pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n        pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n      }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar16 < *pbVar19;" (assignment_expression "bVar23 = *pbVar16 < *pbVar19" identifier = (binary_expression "*pbVar16 < *pbVar19" (pointer_expression "*pbVar16" * identifier) < (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "bVar26 = *pbVar16 == *pbVar19;" (assignment_expression "bVar26 = *pbVar16 == *pbVar19" identifier = (binary_expression "*pbVar16 == *pbVar19" (pointer_expression "*pbVar16" * identifier) == (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar26)" ( identifier )) ;) (expression_statement "bVar24 = false;" (assignment_expression "bVar24 = false" identifier = false) ;) (expression_statement "bVar23 = (!bVar23 && !bVar26) == bVar23;" (assignment_expression "bVar23 = (!bVar23 && !bVar26) == bVar23" identifier = (binary_expression "(!bVar23 && !bVar26) == bVar23" (parenthesized_expression "(!bVar23 && !bVar26)" ( (binary_expression "!bVar23 && !bVar26" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar26" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar23) {\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }" if (parenthesized_expression "(bVar23)" ( identifier )) (compound_statement "{\n        iVar13 = 0x10;\n        pbVar16 = (byte *)section->name;\n        pbVar19 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);\n        if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;\n        linfo.li_offset_size = DAT_000b7640;\n        linfo.li_length._0_4_ = saved_linfo_11144;\n        linfo.li_length._4_4_ = DAT_000b7624;\n        linfo.li_version = (ushort)DAT_000b7628;\n        linfo._10_2_ = DAT_000b7628._2_2_;\n        linfo.li_prologue_length._0_4_ = DAT_000b762c;\n        linfo.li_prologue_length._4_4_ = DAT_000b7630;\n        linfo._20_4_ = DAT_000b7634;\n        linfo.li_line_base = DAT_000b7638;\n        linfo.li_line_range = (uchar)DAT_000b763c;\n        linfo.li_opcode_base = DAT_000b763c._1_1_;\n        linfo._30_2_ = DAT_000b763c._2_2_;\n        if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }\n        state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        local_94 = (uchar *)0x0;\n        end_of_sequence = (uchar *)end;\n      }" { (expression_statement "iVar13 = 0x10;" (assignment_expression "iVar13 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar16 = (byte *)section->name;" (assignment_expression "pbVar16 = (byte *)section->name" identifier = (cast_expression "(byte *)section->name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pbVar19 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar19 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        } while (bVar23);" do (compound_statement "{\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          bVar24 = *pbVar16 < *pbVar19;\n          bVar23 = *pbVar16 == *pbVar19;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n        }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar24 = *pbVar16 < *pbVar19;" (assignment_expression "bVar24 = *pbVar16 < *pbVar19" identifier = (binary_expression "*pbVar16 < *pbVar19" (pointer_expression "*pbVar16" * identifier) < (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "bVar23 = *pbVar16 == *pbVar19;" (assignment_expression "bVar23 = *pbVar16 == *pbVar19" identifier = (binary_expression "*pbVar16 == *pbVar19" (pointer_expression "*pbVar16" * identifier) == (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar23)" ( identifier )) ;) (if_statement "if ((!bVar24 && !bVar23) == bVar24) goto LAB_0005bd30;" if (parenthesized_expression "((!bVar24 && !bVar23) == bVar24)" ( (binary_expression "(!bVar24 && !bVar23) == bVar24" (parenthesized_expression "(!bVar24 && !bVar23)" ( (binary_expression "!bVar24 && !bVar23" (unary_expression "!bVar24" ! identifier) && (unary_expression "!bVar23" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005bd30;" goto statement_identifier ;)) (expression_statement "linfo.li_offset_size = DAT_000b7640;" (assignment_expression "linfo.li_offset_size = DAT_000b7640" (field_expression "linfo.li_offset_size" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._0_4_ = saved_linfo_11144;" (assignment_expression "linfo.li_length._0_4_ = saved_linfo_11144" (field_expression "linfo.li_length._0_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._4_4_ = DAT_000b7624;" (assignment_expression "linfo.li_length._4_4_ = DAT_000b7624" (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_version = (ushort)DAT_000b7628;" (assignment_expression "linfo.li_version = (ushort)DAT_000b7628" (field_expression "linfo.li_version" identifier . field_identifier) = (cast_expression "(ushort)DAT_000b7628" ( (type_descriptor "ushort" type_identifier) ) identifier)) ;) (expression_statement "linfo._10_2_ = DAT_000b7628._2_2_;" (assignment_expression "linfo._10_2_ = DAT_000b7628._2_2_" (field_expression "linfo._10_2_" identifier . field_identifier) = (field_expression "DAT_000b7628._2_2_" identifier . field_identifier)) ;) (expression_statement "linfo.li_prologue_length._0_4_ = DAT_000b762c;" (assignment_expression "linfo.li_prologue_length._0_4_ = DAT_000b762c" (field_expression "linfo.li_prologue_length._0_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._4_4_ = DAT_000b7630;" (assignment_expression "linfo.li_prologue_length._4_4_ = DAT_000b7630" (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._20_4_ = DAT_000b7634;" (assignment_expression "linfo._20_4_ = DAT_000b7634" (field_expression "linfo._20_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_base = DAT_000b7638;" (assignment_expression "linfo.li_line_base = DAT_000b7638" (field_expression "linfo.li_line_base" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_range = (uchar)DAT_000b763c;" (assignment_expression "linfo.li_line_range = (uchar)DAT_000b763c" (field_expression "linfo.li_line_range" identifier . field_identifier) = (cast_expression "(uchar)DAT_000b763c" ( (type_descriptor "uchar" type_identifier) ) identifier)) ;) (expression_statement "linfo.li_opcode_base = DAT_000b763c._1_1_;" (assignment_expression "linfo.li_opcode_base = DAT_000b763c._1_1_" (field_expression "linfo.li_opcode_base" identifier . field_identifier) = (field_expression "DAT_000b763c._1_1_" identifier . field_identifier)) ;) (expression_statement "linfo._30_2_ = DAT_000b763c._2_2_;" (assignment_expression "linfo._30_2_ = DAT_000b763c._2_2_" (field_expression "linfo._30_2_" identifier . field_identifier) = (field_expression "DAT_000b763c._2_2_" identifier . field_identifier)) ;) (if_statement "if ((uchar)DAT_000b763c == '\0') {\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }" if (parenthesized_expression "((uchar)DAT_000b763c == '\0')" ( (binary_expression "(uchar)DAT_000b763c == '\0'" (cast_expression "(uchar)DAT_000b763c" ( (type_descriptor "uchar" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          end_of_sequence = (uchar *)end;\nLAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,pcVar9);\n          warn(pcVar9);\n          pdVar34 = extraout_ECX_04;\n          goto LAB_0005d6b6;\n        }" { (expression_statement "pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";" (assignment_expression "pcVar9 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n"" identifier = (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ")) ;) (expression_statement "end_of_sequence = (uchar *)end;" (assignment_expression "end_of_sequence = (uchar *)end" identifier = (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (labeled_statement "LAB_0005d6a3:\n          in_stack_ffffff2c = (uchar *)0x5;" statement_identifier : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9)" identifier (argument_list "(0,pcVar9)" ( number_literal , identifier ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "pdVar34 = extraout_ECX_04;" (assignment_expression "pdVar34 = extraout_ECX_04" identifier = identifier) ;) (goto_statement "goto LAB_0005d6b6;" goto statement_identifier ;) })) (expression_statement "state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff;" (assignment_expression "state_machine_regs.is_stmt = DAT_000b7634 >> 0x10 & 0xff" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (binary_expression "DAT_000b7634 >> 0x10 & 0xff" (binary_expression "DAT_000b7634 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._0_4_ = 0;" (assignment_expression "state_machine_regs.address._0_4_ = 0" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.address._4_4_ = 0;" (assignment_expression "state_machine_regs.address._4_4_ = 0" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.file = 1;" (assignment_expression "state_machine_regs.file = 1" (field_expression "state_machine_regs.file" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.line = 1;" (assignment_expression "state_machine_regs.line = 1" (field_expression "state_machine_regs.line" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.column = 0;" (assignment_expression "state_machine_regs.column = 0" (field_expression "state_machine_regs.column" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.basic_block = 0;" (assignment_expression "state_machine_regs.basic_block = 0" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.op_index = '\0';" (assignment_expression "state_machine_regs.op_index = '\0'" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.end_sequence = '\0';" (assignment_expression "state_machine_regs.end_sequence = '\0'" (field_expression "state_machine_regs.end_sequence" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.last_file_entry = 0;" (assignment_expression "state_machine_regs.last_file_entry = 0" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = number_literal) ;) (expression_statement "local_94 = (uchar *)0x0;" (assignment_expression "local_94 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "end_of_sequence = (uchar *)end;" (assignment_expression "end_of_sequence = (uchar *)end" identifier = (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) }) (else_clause "else {\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }" else (compound_statement "{\nLAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);\n        pdVar34 = extraout_ECX_01;\n        if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar9,(int)pDVar37 - (int)local_bc);\n        uVar21 = (undefined4)linfo.li_length;\n        pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._8_4_ & 0xffff;\n        pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar21 = (undefined4)linfo.li_prologue_length;\n        pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar9,uVar21);\n        uVar6 = linfo._20_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar9,uVar6);\n        if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }\n        uVar6 = (uint)linfo._20_4_ >> 0x10;\n        pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        iVar13 = linfo.li_line_base;\n        pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar9,iVar13);\n        uVar6 = linfo._28_4_ & 0xff;\n        pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar9,uVar6);\n        uVar6 = (uint)linfo._28_4_ >> 8;\n        pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar9,uVar6 & 0xff);\n        if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }\n        state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n        state_machine_regs.address._0_4_ = 0;\n        state_machine_regs.address._4_4_ = 0;\n        state_machine_regs.address = 0;\n        state_machine_regs.view = 0;\n        state_machine_regs.file = 1;\n        state_machine_regs.line = 1;\n        state_machine_regs.column = 0;\n        state_machine_regs.basic_block = 0;\n        state_machine_regs.op_index = '\0';\n        state_machine_regs.end_sequence = '\0';\n        state_machine_regs.last_file_entry = 0;\n        if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar9);\n        uVar6 = (uint)linfo.li_opcode_base;\n        if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }\n        pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));\n        if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        saved_linfo_11144 = (undefined4)linfo.li_length;\n        DAT_000b7624 = linfo.li_length._4_4_;\n        DAT_000b7628._0_2_ = linfo.li_version;\n        DAT_000b7628._2_2_ = linfo._10_2_;\n        DAT_000b762c = (undefined4)linfo.li_prologue_length;\n        DAT_000b7630 = linfo.li_prologue_length._4_4_;\n        DAT_000b7634._0_1_ = linfo.li_min_insn_length;\n        DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;\n        DAT_000b7634._2_1_ = linfo.li_default_is_stmt;\n        DAT_000b7634._3_1_ = linfo._23_1_;\n        DAT_000b7638 = linfo.li_line_base;\n        DAT_000b763c._0_1_ = linfo.li_line_range;\n        DAT_000b763c._1_1_ = linfo.li_opcode_base;\n        DAT_000b763c._2_2_ = linfo._30_2_;\n        DAT_000b7640 = linfo.li_offset_size;\n      }" { (labeled_statement "LAB_0005bd30:\n        local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);" statement_identifier : (expression_statement "local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34);" (assignment_expression "local_94 = read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34)" identifier = (call_expression "read_debug_line_header\n                             ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34)" identifier (argument_list "((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                              in_stack_ffffff30,in_stack_ffffff34)" ( (cast_expression "(dwarf_section *)&linfo" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo" & identifier)) , (cast_expression "(uchar *)&end_of_sequence" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&end_of_sequence" & identifier)) , identifier , identifier , identifier )))) ;)) (expression_statement "pdVar34 = extraout_ECX_01;" (assignment_expression "pdVar34 = extraout_ECX_01" identifier = identifier) ;) (if_statement "if (local_94 == (uchar *)0x0) {\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" if (parenthesized_expression "(local_94 == (uchar *)0x0)" ( (binary_expression "local_94 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0005d6b6:\n          uVar25 = 0;\n          uVar6 = do_debug_lines & 2;\n          uVar27 = uVar6 == 0;\n          dVar29 = state_machine_regs.address;\n          if ((bool)uVar27) goto LAB_0005a98d;\n          pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;\n          introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" { (labeled_statement "LAB_0005d6b6:\n          uVar25 = 0;" statement_identifier : (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;)) (expression_statement "uVar6 = do_debug_lines & 2;" (assignment_expression "uVar6 = do_debug_lines & 2" identifier = (binary_expression "do_debug_lines & 2" identifier & number_literal)) ;) (expression_statement "uVar27 = uVar6 == 0;" (assignment_expression "uVar27 = uVar6 == 0" identifier = (binary_expression "uVar6 == 0" identifier == number_literal)) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if ((bool)uVar27) goto LAB_0005a98d;" if (parenthesized_expression "((bool)uVar27)" ( (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier) )) (goto_statement "goto LAB_0005a98d;" goto statement_identifier ;)) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)0x5d6d7" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5d6d7" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);" (call_expression "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34)" identifier (argument_list "((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34)" ( (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 "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier (argument_list "(0,"  Offset:                      0x%lx\n",5)" ( number_literal , (string_literal ""  Offset:                      0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,(int)pDVar37 - (int)local_bc);" (call_expression "printf(pcVar9,(int)pDVar37 - (int)local_bc)" identifier (argument_list "(pcVar9,(int)pDVar37 - (int)local_bc)" ( identifier , (binary_expression "(int)pDVar37 - (int)local_bc" (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "uVar21 = (undefined4)linfo.li_length;" (assignment_expression "uVar21 = (undefined4)linfo.li_length" identifier = (cast_expression "(undefined4)linfo.li_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_length" identifier . field_identifier))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Length:                      %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Length:                      %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Length:                      %ld\n",5)" identifier (argument_list "(0,"  Length:                      %ld\n",5)" ( number_literal , (string_literal ""  Length:                      %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar21);" (call_expression "printf(pcVar9,uVar21)" identifier (argument_list "(pcVar9,uVar21)" ( identifier , identifier ))) ;) (expression_statement "uVar6 = linfo._8_4_ & 0xffff;" (assignment_expression "uVar6 = linfo._8_4_ & 0xffff" identifier = (binary_expression "linfo._8_4_ & 0xffff" (field_expression "linfo._8_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  DWARF Version:               %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  DWARF Version:               %d\n",5)" identifier (argument_list "(0,"  DWARF Version:               %d\n",5)" ( number_literal , (string_literal ""  DWARF Version:               %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (expression_statement "uVar21 = (undefined4)linfo.li_prologue_length;" (assignment_expression "uVar21 = (undefined4)linfo.li_prologue_length" identifier = (cast_expression "(undefined4)linfo.li_prologue_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_prologue_length" identifier . field_identifier))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Prologue Length:             %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Prologue Length:             %d\n",5)" identifier (argument_list "(0,"  Prologue Length:             %d\n",5)" ( number_literal , (string_literal ""  Prologue Length:             %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar21);" (call_expression "printf(pcVar9,uVar21)" identifier (argument_list "(pcVar9,uVar21)" ( identifier , identifier ))) ;) (expression_statement "uVar6 = linfo._20_4_ & 0xff;" (assignment_expression "uVar6 = linfo._20_4_ & 0xff" identifier = (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier (argument_list "(0,"  Minimum Instruction Length:  %d\n",5)" ( number_literal , (string_literal ""  Minimum Instruction Length:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (if_statement "if (3 < linfo.li_version) {\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }" if (parenthesized_expression "(3 < linfo.li_version)" ( (binary_expression "3 < linfo.li_version" number_literal < (field_expression "linfo.li_version" identifier . field_identifier)) )) (compound_statement "{\n          uVar6 = (uint)linfo._20_4_ >> 8;\n          pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar9,uVar6 & 0xff);\n        }" { (expression_statement "uVar6 = (uint)linfo._20_4_ >> 8;" (assignment_expression "uVar6 = (uint)linfo._20_4_ >> 8" identifier = (binary_expression "(uint)linfo._20_4_ >> 8" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier (argument_list "(0,"  Maximum Ops per Instruction: %d\n",5)" ( number_literal , (string_literal ""  Maximum Ops per Instruction: %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6 & 0xff);" (call_expression "printf(pcVar9,uVar6 & 0xff)" identifier (argument_list "(pcVar9,uVar6 & 0xff)" ( identifier , (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) ;) })) (expression_statement "uVar6 = (uint)linfo._20_4_ >> 0x10;" (assignment_expression "uVar6 = (uint)linfo._20_4_ >> 0x10" identifier = (binary_expression "(uint)linfo._20_4_ >> 0x10" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier (argument_list "(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( number_literal , (string_literal ""  Initial value of \'is_stmt\':  %d\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6 & 0xff);" (call_expression "printf(pcVar9,uVar6 & 0xff)" identifier (argument_list "(pcVar9,uVar6 & 0xff)" ( identifier , (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) ;) (expression_statement "iVar13 = linfo.li_line_base;" (assignment_expression "iVar13 = linfo.li_line_base" identifier = (field_expression "linfo.li_line_base" identifier . field_identifier)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Line Base:                   %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Base:                   %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Base:                   %d\n",5)" identifier (argument_list "(0,"  Line Base:                   %d\n",5)" ( number_literal , (string_literal ""  Line Base:                   %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,iVar13);" (call_expression "printf(pcVar9,iVar13)" identifier (argument_list "(pcVar9,iVar13)" ( identifier , identifier ))) ;) (expression_statement "uVar6 = linfo._28_4_ & 0xff;" (assignment_expression "uVar6 = linfo._28_4_ & 0xff" identifier = (binary_expression "linfo._28_4_ & 0xff" (field_expression "linfo._28_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Line Range:                  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Range:                  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Range:                  %d\n",5)" identifier (argument_list "(0,"  Line Range:                  %d\n",5)" ( number_literal , (string_literal ""  Line Range:                  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (expression_statement "uVar6 = (uint)linfo._28_4_ >> 8;" (assignment_expression "uVar6 = (uint)linfo._28_4_ >> 8" identifier = (binary_expression "(uint)linfo._28_4_ >> 8" (cast_expression "(uint)linfo._28_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._28_4_" identifier . field_identifier)) >> number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier (argument_list "(0,"  Opcode Base:                 %d\n",5)" ( number_literal , (string_literal ""  Opcode Base:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6 & 0xff);" (call_expression "printf(pcVar9,uVar6 & 0xff)" identifier (argument_list "(pcVar9,uVar6 & 0xff)" ( identifier , (binary_expression "uVar6 & 0xff" identifier & number_literal) ))) ;) (if_statement "if (linfo.li_line_range == '\0') {\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }" if (parenthesized_expression "(linfo.li_line_range == '\0')" ( (binary_expression "linfo.li_line_range == '\0'" (field_expression "linfo.li_line_range" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(pcVar9);\n          linfo.li_line_range = '\x01';\n        }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "linfo.li_line_range = '\x01';" (assignment_expression "linfo.li_line_range = '\x01'" (field_expression "linfo.li_line_range" identifier . field_identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;" (assignment_expression "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (binary_expression "(uint)linfo._20_4_ >> 0x10 & 0xff" (binary_expression "(uint)linfo._20_4_ >> 0x10" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._0_4_ = 0;" (assignment_expression "state_machine_regs.address._0_4_ = 0" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.address._4_4_ = 0;" (assignment_expression "state_machine_regs.address._4_4_ = 0" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.address = 0;" (assignment_expression "state_machine_regs.address = 0" (field_expression "state_machine_regs.address" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.file = 1;" (assignment_expression "state_machine_regs.file = 1" (field_expression "state_machine_regs.file" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.line = 1;" (assignment_expression "state_machine_regs.line = 1" (field_expression "state_machine_regs.line" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.column = 0;" (assignment_expression "state_machine_regs.column = 0" (field_expression "state_machine_regs.column" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.basic_block = 0;" (assignment_expression "state_machine_regs.basic_block = 0" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.op_index = '\0';" (assignment_expression "state_machine_regs.op_index = '\0'" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.end_sequence = '\0';" (assignment_expression "state_machine_regs.end_sequence = '\0'" (field_expression "state_machine_regs.end_sequence" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.last_file_entry = 0;" (assignment_expression "state_machine_regs.last_file_entry = 0" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = number_literal) ;) (if_statement "if (end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))) {\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" if (parenthesized_expression "(end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff)))" ( (binary_expression "end <= (DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))" identifier <= (cast_expression "(DWARF2_Internal_LineInfo *)(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + ((uint)linfo._28_4_ >> 8 & 0xff))" ( (binary_expression "local_94 + ((uint)linfo._28_4_ >> 8 & 0xff)" identifier + (parenthesized_expression "((uint)linfo._28_4_ >> 8 & 0xff)" ( (binary_expression "(uint)linfo._28_4_ >> 8 & 0xff" (binary_expression "(uint)linfo._28_4_ >> 8" (cast_expression "(uint)linfo._28_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._28_4_" identifier . field_identifier)) >> number_literal) & number_literal) ))) )))) )) (compound_statement "{\n          pcVar9 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" { (expression_statement "pcVar9 = "Line Base extends beyond end of section\n";" (assignment_expression "pcVar9 = "Line Base extends beyond end of section\n"" identifier = (string_literal ""Line Base extends beyond end of section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005d6a3;" goto statement_identifier ;) })) (expression_statement "pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n Opcodes:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n Opcodes:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n Opcodes:\n",5)" identifier (argument_list "(0,"\n Opcodes:\n",5)" ( number_literal , (string_literal ""\n Opcodes:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "uVar6 = (uint)linfo.li_opcode_base;" (assignment_expression "uVar6 = (uint)linfo.li_opcode_base" identifier = (cast_expression "(uint)linfo.li_opcode_base" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_opcode_base" identifier . field_identifier))) ;) (if_statement "if (1 < linfo.li_opcode_base) {\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }" if (parenthesized_expression "(1 < linfo.li_opcode_base)" ( (binary_expression "1 < linfo.li_opcode_base" number_literal < (field_expression "linfo.li_opcode_base" identifier . field_identifier)) )) (compound_statement "{\n          iVar13 = 1;\n          do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);\n        }" { (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) (do_statement "do {\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          } while (iVar18 < (int)uVar6);" do (compound_statement "{\n            bVar12 = local_94[iVar13 + -1];\n            pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);\n            iVar18 = iVar13 + 1;\n            printf(pcVar9,iVar13,(uint)bVar12);\n            uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n            iVar13 = iVar18;\n          }" { (expression_statement "bVar12 = local_94[iVar13 + -1];" (assignment_expression "bVar12 = local_94[iVar13 + -1]" identifier = (subscript_expression "local_94[iVar13 + -1]" identifier [ (binary_expression "iVar13 + -1" identifier + number_literal) ])) ;) (expression_statement "pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5);" (assignment_expression "pcVar9 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5)" identifier = (cast_expression "(char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5)" identifier (argument_list "(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        (uint)bVar12,5)" ( number_literal , (string_literal ""  Opcode %d has %d arg\n"" " string_content escape_sequence ") , (string_literal ""  Opcode %d has %d args\n"" " string_content escape_sequence ") , (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier) , number_literal ))))) ;) (expression_statement "iVar18 = iVar13 + 1;" (assignment_expression "iVar18 = iVar13 + 1" identifier = (binary_expression "iVar13 + 1" identifier + number_literal)) ;) (expression_statement "printf(pcVar9,iVar13,(uint)bVar12);" (call_expression "printf(pcVar9,iVar13,(uint)bVar12)" identifier (argument_list "(pcVar9,iVar13,(uint)bVar12)" ( identifier , identifier , (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;) (expression_statement "uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;" (assignment_expression "uVar6 = (uint)linfo._28_4_ >> 8 & 0xff" identifier = (binary_expression "(uint)linfo._28_4_ >> 8 & 0xff" (binary_expression "(uint)linfo._28_4_ >> 8" (cast_expression "(uint)linfo._28_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._28_4_" identifier . field_identifier)) >> number_literal) & number_literal)) ;) (expression_statement "iVar13 = iVar18;" (assignment_expression "iVar13 = iVar18" identifier = identifier) ;) }) while (parenthesized_expression "(iVar18 < (int)uVar6)" ( (binary_expression "iVar18 < (int)uVar6" identifier < (cast_expression "(int)uVar6" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1));" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1))" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(local_94 + (uVar6 - 1))" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + (uVar6 - 1))" ( (binary_expression "local_94 + (uVar6 - 1)" identifier + (parenthesized_expression "(uVar6 - 1)" ( (binary_expression "uVar6 - 1" identifier - number_literal) ))) )))) ;) (if_statement "if (linfo.li_version < 5) {\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }\n        else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }" if (parenthesized_expression "(linfo.li_version < 5)" ( (binary_expression "linfo.li_version < 5" (field_expression "linfo.li_version" identifier . field_identifier) < number_literal) )) (compound_statement "{\n          if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }\nLAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n        }" { (if_statement "if ((byte)pDVar37->li_length == 0) {\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }\n          else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }" if (parenthesized_expression "((byte)pDVar37->li_length == 0)" ( (binary_expression "(byte)pDVar37->li_length == 0" (cast_expression "(byte)pDVar37->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar37->li_length" identifier -> field_identifier)) == number_literal) )) (compound_statement "{\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar9);\n            if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar9,(int)pDVar22 - (int)local_bc);\n            pDVar15 = (DWARF2_Internal_LineInfo *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar9);\n            if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }\n          }" { (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier (argument_list "(0,"\n The Directory Table is empty.\n",5)" ( number_literal , (string_literal ""\n The Directory Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (if_statement "if (*(byte *)((int)&pDVar37->li_length + 1) == 0) goto LAB_0005c013;" if (parenthesized_expression "(*(byte *)((int)&pDVar37->li_length + 1) == 0)" ( (binary_expression "*(byte *)((int)&pDVar37->li_length + 1) == 0" (pointer_expression "*(byte *)((int)&pDVar37->li_length + 1)" * (cast_expression "(byte *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) == number_literal) )) (goto_statement "goto LAB_0005c013;" goto statement_identifier ;)) (labeled_statement "LAB_0005d01c:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier (argument_list "(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( number_literal , (string_literal ""\n The File Name Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar9,(int)pDVar22 - (int)local_bc);" (call_expression "printf(pcVar9,(int)pDVar22 - (int)local_bc)" identifier (argument_list "(pcVar9,(int)pDVar22 - (int)local_bc)" ( identifier , (binary_expression "(int)pDVar22 - (int)local_bc" (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "pDVar15 = (DWARF2_Internal_LineInfo *)0x5;" (assignment_expression "pDVar15 = (DWARF2_Internal_LineInfo *)0x5" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier (argument_list "(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( number_literal , (string_literal ""  Entry\tDir\tTime\tSize\tName\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (if_statement "if ((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)) {\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }" if (parenthesized_expression "((pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0))" ( (binary_expression "(pDVar22 < end) && (*(byte *)((int)&pDVar37->li_length + 1) != 0)" (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) && (parenthesized_expression "(*(byte *)((int)&pDVar37->li_length + 1) != 0)" ( (binary_expression "*(byte *)((int)&pDVar37->li_length + 1) != 0" (pointer_expression "*(byte *)((int)&pDVar37->li_length + 1)" * (cast_expression "(byte *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n              pDVar37 = pDVar22;\n              while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }\n              pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(pcVar9);\n              pDVar22 = end;\n            }" { (expression_statement "pDVar37 = pDVar22;" (assignment_expression "pDVar37 = pDVar22" identifier = identifier) ;) (while_statement "while( true ) {\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);\n                sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);\n                pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);\n                puVar35 = &bytes_read;\n                in_stack_ffffff30 = end;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t");\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);\n                printf("%s\t",pcVar9);\n                pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                pDVar15 = pDVar37;\n                printf("%.*s\n",(int)end - (int)pDVar37);\n                if (end == pDVar22) break;\n                if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;\n              }" { (expression_statement "state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;" (assignment_expression "state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = (binary_expression "state_machine_regs.last_file_entry + 1" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) + number_literal)) ;) (expression_statement "printf("  %d\t",state_machine_regs.last_file_entry,pDVar15);" (call_expression "printf("  %d\t",state_machine_regs.last_file_entry,pDVar15)" identifier (argument_list "("  %d\t",state_machine_regs.last_file_entry,pDVar15)" ( (string_literal ""  %d\t"" " string_content escape_sequence ") , (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37);" (assignment_expression "sVar8 = strnlen((char *)pDVar37,(int)end - (int)pDVar37)" identifier = (call_expression "strnlen((char *)pDVar37,(int)end - (int)pDVar37)" identifier (argument_list "((char *)pDVar37,(int)end - (int)pDVar37)" ( (cast_expression "(char *)pDVar37" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1);" (assignment_expression "pbVar16 = (byte *)((int)&pDVar37->li_length + sVar8 + 1)" identifier = (cast_expression "(byte *)((int)&pDVar37->li_length + sVar8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + sVar8 + 1)" ( (binary_expression "(int)&pDVar37->li_length + sVar8 + 1" (binary_expression "(int)&pDVar37->li_length + sVar8" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf("%s\t");" (call_expression "printf("%s\t")" identifier (argument_list "("%s\t")" ( (string_literal ""%s\t"" " string_content escape_sequence ") ))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" identifier (argument_list "("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(pcVar9) << 0x20" (call_expression "ZEXT48(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf("%s\t");" (call_expression "printf("%s\t")" identifier (argument_list "("%s\t")" ( (string_literal ""%s\t"" " string_content escape_sequence ") ))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" identifier (argument_list "("u",ZEXT48(pcVar9) << 0x20,(uint)dVar29)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(pcVar9) << 0x20" (call_expression "ZEXT48(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf("%s\t",pcVar9);" (call_expression "printf("%s\t",pcVar9)" identifier (argument_list "("%s\t",pcVar9)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (expression_statement "pDVar15 = pDVar37;" (assignment_expression "pDVar15 = pDVar37" identifier = identifier) ;) (expression_statement "printf("%.*s\n",(int)end - (int)pDVar37);" (call_expression "printf("%.*s\n",(int)end - (int)pDVar37)" identifier (argument_list "("%.*s\n",(int)end - (int)pDVar37)" ( (string_literal ""%.*s\n"" " string_content escape_sequence ") , (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (if_statement "if (end == pDVar22) break;" if (parenthesized_expression "(end == pDVar22)" ( (binary_expression "end == pDVar22" identifier == identifier) )) (break_statement "break;" break ;)) (if_statement "if ((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))\n                goto LAB_0005c031;" if (parenthesized_expression "((end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0))" ( (binary_expression "(end <= pDVar22) || (pDVar37 = pDVar22, (byte)pDVar22->li_length == 0)" (parenthesized_expression "(end <= pDVar22)" ( (binary_expression "end <= pDVar22" identifier <= identifier) )) || (parenthesized_expression "(pDVar37 = pDVar22, (byte)pDVar22->li_length == 0)" ( (comma_expression "pDVar37 = pDVar22, (byte)pDVar22->li_length == 0" (assignment_expression "pDVar37 = pDVar22" identifier = identifier) , (binary_expression "(byte)pDVar22->li_length == 0" (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier)) == number_literal)) ))) )) (goto_statement "goto LAB_0005c031;" goto statement_identifier ;)) })) (expression_statement "pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Corrupt file name table entry\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Corrupt file name table entry\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Corrupt file name table entry\n",5)" identifier (argument_list "(0,"Corrupt file name table entry\n",5)" ( number_literal , (string_literal ""Corrupt file name table entry\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "pDVar22 = end;" (assignment_expression "pDVar22 = end" identifier = identifier) ;) })) }) (else_clause "else {\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }" else (compound_statement "{\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");\n            printf(pcVar9,(int)pDVar37 - (int)local_bc);\n            pdVar34 = extraout_ECX_02;\n            if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }\n            if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n            if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar9);\n          }" { (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n")" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table (offset 0x%lx):\n")" identifier (argument_list "(0,"\n The Directory Table (offset 0x%lx):\n")" ( number_literal , (string_literal ""\n The Directory Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9,(int)pDVar37 - (int)local_bc);" (call_expression "printf(pcVar9,(int)pDVar37 - (int)local_bc)" identifier (argument_list "(pcVar9,(int)pDVar37 - (int)local_bc)" ( identifier , (binary_expression "(int)pDVar37 - (int)local_bc" (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "pdVar34 = extraout_ECX_02;" (assignment_expression "pdVar34 = extraout_ECX_02" identifier = identifier) ;) (if_statement "if ((pDVar37 < end) && ((byte)pDVar37->li_length != 0)) {\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }" if (parenthesized_expression "((pDVar37 < end) && ((byte)pDVar37->li_length != 0))" ( (binary_expression "(pDVar37 < end) && ((byte)pDVar37->li_length != 0)" (parenthesized_expression "(pDVar37 < end)" ( (binary_expression "pDVar37 < end" identifier < identifier) )) && (parenthesized_expression "((byte)pDVar37->li_length != 0)" ( (binary_expression "(byte)pDVar37->li_length != 0" (cast_expression "(byte)pDVar37->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar37->li_length" identifier -> field_identifier)) != number_literal) ))) )) (compound_statement "{\n              iVar13 = 0;\n              do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);\n            }" { (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (do_statement "do {\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              } while ((byte)pDVar37->li_length != 0);" do (compound_statement "{\n                iVar13 = iVar13 + 1;\n                in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);\n                in_stack_ffffff30 = pDVar37;\n                printf("  %d\t%.*s\n",iVar13);\n                sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);\n                pdVar34 = extraout_ECX_03;\n                if (end <= pDVar37) break;\n              }" { (expression_statement "iVar13 = iVar13 + 1;" (assignment_expression "iVar13 = iVar13 + 1" identifier = (binary_expression "iVar13 + 1" identifier + number_literal)) ;) (expression_statement "in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37);" (assignment_expression "in_stack_ffffff2c = (uchar *)((int)end - (int)pDVar37)" identifier = (cast_expression "(uchar *)((int)end - (int)pDVar37)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)end - (int)pDVar37)" ( (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "in_stack_ffffff30 = pDVar37;" (assignment_expression "in_stack_ffffff30 = pDVar37" identifier = identifier) ;) (expression_statement "printf("  %d\t%.*s\n",iVar13);" (call_expression "printf("  %d\t%.*s\n",iVar13)" identifier (argument_list "("  %d\t%.*s\n",iVar13)" ( (string_literal ""  %d\t%.*s\n"" " string_content escape_sequence string_content escape_sequence ") , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37));" (assignment_expression "sVar8 = strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37))" identifier = (call_expression "strnlen((char *)pDVar37,(size_t)((int)end - (int)pDVar37))" identifier (argument_list "((char *)pDVar37,(size_t)((int)end - (int)pDVar37))" ( (cast_expression "(char *)pDVar37" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(size_t)((int)end - (int)pDVar37)" ( (type_descriptor "size_t" primitive_type) ) (parenthesized_expression "((int)end - (int)pDVar37)" ( (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + sVar8 + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + sVar8 + 1)" ( (binary_expression "(int)&pDVar37->li_length + sVar8 + 1" (binary_expression "(int)&pDVar37->li_length + sVar8" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "pdVar34 = extraout_ECX_03;" (assignment_expression "pdVar34 = extraout_ECX_03" identifier = identifier) ;) (if_statement "if (end <= pDVar37) break;" if (parenthesized_expression "(end <= pDVar37)" ( (binary_expression "end <= pDVar37" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "((byte)pDVar37->li_length != 0)" ( (binary_expression "(byte)pDVar37->li_length != 0" (cast_expression "(byte)pDVar37->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar37->li_length" identifier -> field_identifier)) != number_literal) )) ;) })) (if_statement "if ((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37) break;" if (parenthesized_expression "((DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37)" ( (binary_expression "(DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3) <= pDVar37" (cast_expression "(DWARF2_Internal_LineInfo *)((int)&end[-1].li_offset_size + 3)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&end[-1].li_offset_size + 3)" ( (binary_expression "(int)&end[-1].li_offset_size + 3" (cast_expression "(int)&end[-1].li_offset_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&end[-1].li_offset_size" & (field_expression "end[-1].li_offset_size" (subscript_expression "end[-1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (*(byte *)((int)&pDVar37->li_length + 1) != 0) goto LAB_0005d01c;" if (parenthesized_expression "(*(byte *)((int)&pDVar37->li_length + 1) != 0)" ( (binary_expression "*(byte *)((int)&pDVar37->li_length + 1) != 0" (pointer_expression "*(byte *)((int)&pDVar37->li_length + 1)" * (cast_expression "(byte *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) != number_literal) )) (goto_statement "goto LAB_0005d01c;" goto statement_identifier ;)) (labeled_statement "LAB_0005c013:\n            pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier (argument_list "(0,"\n The File Name Table is empty.\n",5)" ( number_literal , (string_literal ""\n The File Name Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) }))) (labeled_statement "LAB_0005c031:\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);" statement_identifier : (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + 1)" ( (binary_expression "(int)&pDVar22->li_length + 1" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + number_literal) )))) ;)) }) (else_clause "else {\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }" else (compound_statement "{\n          in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;\n          load_debug_section_with_follow(line_str,file);\n          pcVar9 = "Directory";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);\n          pcVar9 = "File name";\n          pDVar22 = (DWARF2_Internal_LineInfo *)0x5;\n          pdVar34 = (dwarf_section *)0x0;\n          pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();\n          pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);\n        }" { (expression_statement "in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1;" (assignment_expression "in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5c6a1" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5c6a1" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "load_debug_section_with_follow(line_str,file);" (call_expression "load_debug_section_with_follow(line_str,file)" identifier (argument_list "(line_str,file)" ( identifier , identifier ))) ;) (expression_statement "pcVar9 = "Directory";" (assignment_expression "pcVar9 = "Directory"" identifier = (string_literal ""Directory"" " string_content ")) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)0x5;" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)0x5" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pdVar34 = (dwarf_section *)0x0;" (assignment_expression "pdVar34 = (dwarf_section *)0x0" identifier = (cast_expression "(dwarf_section *)0x0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext()" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)dcgettext()" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22);" (call_expression "display_formatted_table\n                    ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22)" identifier (argument_list "((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,(uchar *)section,\n                     pDVar37,pdVar34,pcVar9,pDVar22)" ( (cast_expression "(uchar *)&linfo.li_version" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo.li_version" & (field_expression "linfo.li_version" identifier . field_identifier))) , (cast_expression "(uchar *)&linfo.li_offset_size" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo.li_offset_size" & (field_expression "linfo.li_offset_size" identifier . field_identifier))) , (cast_expression "(uchar *)section" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier , identifier , identifier ))) ;) (expression_statement "pcVar9 = "File name";" (assignment_expression "pcVar9 = "File name"" identifier = (string_literal ""File name"" " string_content ")) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)0x5;" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)0x5" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pdVar34 = (dwarf_section *)0x0;" (assignment_expression "pdVar34 = (dwarf_section *)0x0" identifier = (cast_expression "(dwarf_section *)0x0" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext();" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)dcgettext()" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)dcgettext()" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext()" identifier (argument_list "()" ( ))))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)\n                    display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "display_formatted_table\n                              ((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22)" identifier (argument_list "((uchar *)&linfo.li_version,(uchar *)&linfo.li_offset_size,\n                               (uchar *)section,pDVar37,pdVar34,pcVar9,pDVar22)" ( (cast_expression "(uchar *)&linfo.li_version" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo.li_version" & (field_expression "linfo.li_version" identifier . field_identifier))) , (cast_expression "(uchar *)&linfo.li_offset_size" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo.li_offset_size" & (field_expression "linfo.li_offset_size" identifier . field_identifier))) , (cast_expression "(uchar *)section" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier , identifier , identifier ))))) ;) }))) (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "saved_linfo_11144 = (undefined4)linfo.li_length;" (assignment_expression "saved_linfo_11144 = (undefined4)linfo.li_length" identifier = (cast_expression "(undefined4)linfo.li_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_length" identifier . field_identifier))) ;) (expression_statement "DAT_000b7624 = linfo.li_length._4_4_;" (assignment_expression "DAT_000b7624 = linfo.li_length._4_4_" identifier = (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier)) ;) (expression_statement "DAT_000b7628._0_2_ = linfo.li_version;" (assignment_expression "DAT_000b7628._0_2_ = linfo.li_version" (field_expression "DAT_000b7628._0_2_" identifier . field_identifier) = (field_expression "linfo.li_version" identifier . field_identifier)) ;) (expression_statement "DAT_000b7628._2_2_ = linfo._10_2_;" (assignment_expression "DAT_000b7628._2_2_ = linfo._10_2_" (field_expression "DAT_000b7628._2_2_" identifier . field_identifier) = (field_expression "linfo._10_2_" identifier . field_identifier)) ;) (expression_statement "DAT_000b762c = (undefined4)linfo.li_prologue_length;" (assignment_expression "DAT_000b762c = (undefined4)linfo.li_prologue_length" identifier = (cast_expression "(undefined4)linfo.li_prologue_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_prologue_length" identifier . field_identifier))) ;) (expression_statement "DAT_000b7630 = linfo.li_prologue_length._4_4_;" (assignment_expression "DAT_000b7630 = linfo.li_prologue_length._4_4_" identifier = (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier)) ;) (expression_statement "DAT_000b7634._0_1_ = linfo.li_min_insn_length;" (assignment_expression "DAT_000b7634._0_1_ = linfo.li_min_insn_length" (field_expression "DAT_000b7634._0_1_" identifier . field_identifier) = (field_expression "linfo.li_min_insn_length" identifier . field_identifier)) ;) (expression_statement "DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn;" (assignment_expression "DAT_000b7634._1_1_ = linfo.li_max_ops_per_insn" (field_expression "DAT_000b7634._1_1_" identifier . field_identifier) = (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier)) ;) (expression_statement "DAT_000b7634._2_1_ = linfo.li_default_is_stmt;" (assignment_expression "DAT_000b7634._2_1_ = linfo.li_default_is_stmt" (field_expression "DAT_000b7634._2_1_" identifier . field_identifier) = (field_expression "linfo.li_default_is_stmt" identifier . field_identifier)) ;) (expression_statement "DAT_000b7634._3_1_ = linfo._23_1_;" (assignment_expression "DAT_000b7634._3_1_ = linfo._23_1_" (field_expression "DAT_000b7634._3_1_" identifier . field_identifier) = (field_expression "linfo._23_1_" identifier . field_identifier)) ;) (expression_statement "DAT_000b7638 = linfo.li_line_base;" (assignment_expression "DAT_000b7638 = linfo.li_line_base" identifier = (field_expression "linfo.li_line_base" identifier . field_identifier)) ;) (expression_statement "DAT_000b763c._0_1_ = linfo.li_line_range;" (assignment_expression "DAT_000b763c._0_1_ = linfo.li_line_range" (field_expression "DAT_000b763c._0_1_" identifier . field_identifier) = (field_expression "linfo.li_line_range" identifier . field_identifier)) ;) (expression_statement "DAT_000b763c._1_1_ = linfo.li_opcode_base;" (assignment_expression "DAT_000b763c._1_1_ = linfo.li_opcode_base" (field_expression "DAT_000b763c._1_1_" identifier . field_identifier) = (field_expression "linfo.li_opcode_base" identifier . field_identifier)) ;) (expression_statement "DAT_000b763c._2_2_ = linfo._30_2_;" (assignment_expression "DAT_000b763c._2_2_ = linfo._30_2_" (field_expression "DAT_000b763c._2_2_" identifier . field_identifier) = (field_expression "linfo._30_2_" identifier . field_identifier)) ;) (expression_statement "DAT_000b7640 = linfo.li_offset_size;" (assignment_expression "DAT_000b7640 = linfo.li_offset_size" identifier = (field_expression "linfo.li_offset_size" identifier . field_identifier)) ;) }))) (expression_statement "linfo.li_length._0_4_ = saved_linfo_11144;" (assignment_expression "linfo.li_length._0_4_ = saved_linfo_11144" (field_expression "linfo.li_length._0_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._4_4_ = DAT_000b7624;" (assignment_expression "linfo.li_length._4_4_ = DAT_000b7624" (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._8_4_ = DAT_000b7628;" (assignment_expression "linfo._8_4_ = DAT_000b7628" (field_expression "linfo._8_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._0_4_ = DAT_000b762c;" (assignment_expression "linfo.li_prologue_length._0_4_ = DAT_000b762c" (field_expression "linfo.li_prologue_length._0_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._4_4_ = DAT_000b7630;" (assignment_expression "linfo.li_prologue_length._4_4_ = DAT_000b7630" (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._20_4_ = DAT_000b7634;" (assignment_expression "linfo._20_4_ = DAT_000b7634" (field_expression "linfo._20_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_base = DAT_000b7638;" (assignment_expression "linfo.li_line_base = DAT_000b7638" (field_expression "linfo.li_line_base" identifier . field_identifier) = identifier) ;) (expression_statement "linfo._28_4_ = DAT_000b763c;" (assignment_expression "linfo._28_4_ = DAT_000b763c" (field_expression "linfo._28_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_offset_size = DAT_000b7640;" (assignment_expression "linfo.li_offset_size = DAT_000b7640" (field_expression "linfo.li_offset_size" identifier . field_identifier) = identifier) ;) (if_statement "if (pDVar37 < end_of_sequence) {\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }" if (parenthesized_expression "(pDVar37 < end_of_sequence)" ( (binary_expression "pDVar37 < end_of_sequence" identifier < identifier) )) (compound_statement "{\n        in_stack_ffffff2c = (uchar *)0x5;\n        pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");\n        printf(pcVar9);\n        pDVar22 = pDVar37;\n        if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar23 = end < pDVar37;\n        bVar26 = end == pDVar37;\n        pdVar34 = extraout_ECX_00;\n        if (end <= pDVar37) break;\n        goto LAB_0005b368;\n      }" { (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0," Line Number Statements:\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0," Line Number Statements:\n")" identifier = (cast_expression "(char *)dcgettext(0," Line Number Statements:\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Line Number Statements:\n")" identifier (argument_list "(0," Line Number Statements:\n")" ( number_literal , (string_literal "" Line Number Statements:\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "pDVar22 = pDVar37;" (assignment_expression "pDVar22 = pDVar37" identifier = identifier) ;) (if_statement "if (pDVar37 < end_of_sequence) {\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" if (parenthesized_expression "(pDVar37 < end_of_sequence)" ( (binary_expression "pDVar37 < end_of_sequence" identifier < identifier) )) (compound_statement "{\nLAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;\n          printf("  [0x%08lx]");\n          dVar29 = state_machine_regs.address;\n          pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);\n          bVar12 = (byte)pDVar22->li_length;\n          if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }\nLAB_0005b6a1:\n          pDVar22 = pDVar37;\n          if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" { (labeled_statement "LAB_0005b6b6:\n          uVar6 = (int)pDVar22 - (int)local_bc;" statement_identifier : (expression_statement "uVar6 = (int)pDVar22 - (int)local_bc;" (assignment_expression "uVar6 = (int)pDVar22 - (int)local_bc" identifier = (binary_expression "(int)pDVar22 - (int)local_bc" (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier))) ;)) (expression_statement "printf("  [0x%08lx]");" (call_expression "printf("  [0x%08lx]")" identifier (argument_list "("  [0x%08lx]")" ( (string_literal ""  [0x%08lx]"" " string_content ") ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + 1)" ( (binary_expression "(int)&pDVar22->li_length + 1" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "bVar12 = (byte)pDVar22->li_length;" (assignment_expression "bVar12 = (byte)pDVar22->li_length" identifier = (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier))) ;) (if_statement "if (linfo.li_opcode_base <= bVar12) {\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }" if (parenthesized_expression "(linfo.li_opcode_base <= bVar12)" ( (binary_expression "linfo.li_opcode_base <= bVar12" (field_expression "linfo.li_opcode_base" identifier . field_identifier) <= identifier) )) (compound_statement "{\n            bVar12 = bVar12 - linfo.li_opcode_base;\n            uVar20 = linfo._20_4_ & 0xff;\n            uVar7 = (uint)(bVar12 / linfo.li_line_range);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }\n            printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);\n            uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);\n            pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar5,pcVar9);\n            if (state_machine_regs.view == 0) goto LAB_0005bb80;\nLAB_0005b679:\n            uVar6 = state_machine_regs.view;\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar9,uVar6);\nLAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;\n            goto LAB_0005b6a1;\n          }" { (expression_statement "bVar12 = bVar12 - linfo.li_opcode_base;" (assignment_expression "bVar12 = bVar12 - linfo.li_opcode_base" identifier = (binary_expression "bVar12 - linfo.li_opcode_base" identifier - (field_expression "linfo.li_opcode_base" identifier . field_identifier))) ;) (expression_statement "uVar20 = linfo._20_4_ & 0xff;" (assignment_expression "uVar20 = linfo._20_4_ & 0xff" identifier = (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "uVar7 = (uint)(bVar12 / linfo.li_line_range);" (assignment_expression "uVar7 = (uint)(bVar12 / linfo.li_line_range)" identifier = (call_expression "(uint)(bVar12 / linfo.li_line_range)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar12 / linfo.li_line_range)" ( (binary_expression "bVar12 / linfo.li_line_range" identifier / (field_expression "linfo.li_line_range" identifier . field_identifier)) )))) ;) (if_statement "if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }\n            else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn == '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;\n              uVar20 = (uint)lVar1;\n              state_machine_regs.address = lVar1 + state_machine_regs.address;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n              pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              __format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);\n              puVar33 = &DAT_0007bc55;\n            }" { (expression_statement "lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20;" (assignment_expression "lVar1 = (ulonglong)uVar7 * (ulonglong)uVar20" identifier = (binary_expression "(ulonglong)uVar7 * (ulonglong)uVar20" (cast_expression "(ulonglong)uVar7" ( (type_descriptor "ulonglong" type_identifier) ) identifier) * (cast_expression "(ulonglong)uVar20" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "uVar20 = (uint)lVar1;" (assignment_expression "uVar20 = (uint)lVar1" identifier = (cast_expression "(uint)lVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "state_machine_regs.address = lVar1 + state_machine_regs.address;" (assignment_expression "state_machine_regs.address = lVar1 + state_machine_regs.address" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "lVar1 + state_machine_regs.address" identifier + (field_expression "state_machine_regs.address" identifier . field_identifier))) ;) (if_statement "if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n                state_machine_regs.view = 0;\n              }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;" (assignment_expression "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier = (call_expression "dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier (argument_list "("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);" (assignment_expression "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20)" identifier = (call_expression "dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20)" identifier (argument_list "("u",(ulonglong)uVar6 << 0x20,uVar20)" ( (string_literal ""u"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , identifier )))) ;) (expression_statement "pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s";" (assignment_expression "pcVar9 = "  Special opcode %d: advance Address by %s to 0x%s%s"" identifier = (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ")) ;) (expression_statement "__format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5);" (assignment_expression "__format = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5)" identifier = (cast_expression "(char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5)" identifier (argument_list "(0,"  Special opcode %d: advance Address by %s to 0x%s%s",\n                                           5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ") , number_literal ))))) ;) (expression_statement "puVar33 = &DAT_0007bc55;" (assignment_expression "puVar33 = &DAT_0007bc55" identifier = (pointer_expression "&DAT_0007bc55" & identifier)) ;) }) (else_clause "else {\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }" else (compound_statement "{\n              iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);\n              puVar33 = local_54[0];\n              uVar20 = iVar13 * uVar20;\n              state_machine_regs.address = dVar29 + uVar20;\n              state_machine_regs.op_index = (uchar)local_54[0];\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;\n              pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);\n              __format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);\n              pcVar9 = "";\n            }" { (expression_statement "iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54);" (assignment_expression "iVar13 = __udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54)" identifier = (call_expression "__udivmoddi4(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54)" identifier (argument_list "(state_machine_regs.op_index + uVar7,\n                                    CARRY4((uint)state_machine_regs.op_index,uVar7),\n                                    linfo.li_max_ops_per_insn,0,local_54)" ( (binary_expression "state_machine_regs.op_index + uVar7" (field_expression "state_machine_regs.op_index" identifier . field_identifier) + identifier) , (call_expression "CARRY4((uint)state_machine_regs.op_index,uVar7)" identifier (argument_list "((uint)state_machine_regs.op_index,uVar7)" ( (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) , identifier ))) , (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar33 = local_54[0];" (assignment_expression "puVar33 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar20 = iVar13 * uVar20;" (assignment_expression "uVar20 = iVar13 * uVar20" identifier = (binary_expression "iVar13 * uVar20" identifier * identifier)) ;) (expression_statement "state_machine_regs.address = dVar29 + uVar20;" (assignment_expression "state_machine_regs.address = dVar29 + uVar20" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "dVar29 + uVar20" identifier + identifier)) ;) (expression_statement "state_machine_regs.op_index = (uchar)local_54[0];" (assignment_expression "state_machine_regs.op_index = (uchar)local_54[0]" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (cast_expression "(uchar)local_54[0]" ( (type_descriptor "uchar" type_identifier) ) (subscript_expression "local_54[0]" identifier [ number_literal ]))) ;) (if_statement "if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n                state_machine_regs.view = 0;\n              }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)\n              ;" (assignment_expression "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier = (call_expression "dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier (argument_list "("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7);" (assignment_expression "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7)" identifier = (call_expression "dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar7)" identifier (argument_list "("u",(ulonglong)uVar6 << 0x20,uVar7)" ( (string_literal ""u"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , identifier )))) ;) (expression_statement "__format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5);" (assignment_expression "__format = (char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5)" identifier (argument_list "(0,\n                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"\n                                           ,5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s[%d]%s"" " string_content ") , number_literal ))))) ;) (expression_statement "pcVar9 = "";" (assignment_expression "pcVar9 = """ identifier = (string_literal """" " ")) ;) }))) (expression_statement "printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33);" (call_expression "printf(__format,(uint)bVar12,pcVar10,pcVar5,puVar33)" identifier (argument_list "(__format,(uint)bVar12,pcVar10,pcVar5,puVar33)" ( identifier , (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base;" (assignment_expression "uVar6 = (uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base" identifier = (binary_expression "(uint)(bVar12 % linfo.li_line_range) + linfo.li_line_base" (call_expression "(uint)(bVar12 % linfo.li_line_range)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar12 % linfo.li_line_range)" ( (binary_expression "bVar12 % linfo.li_line_range" identifier % (field_expression "linfo.li_line_range" identifier . field_identifier)) ))) + (field_expression "linfo.li_line_base" identifier . field_identifier))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6);" (assignment_expression "in_stack_ffffff2c = (uchar *)(state_machine_regs.line + uVar6)" identifier = (cast_expression "(uchar *)(state_machine_regs.line + uVar6)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(state_machine_regs.line + uVar6)" ( (binary_expression "state_machine_regs.line + uVar6" (field_expression "state_machine_regs.line" identifier . field_identifier) + identifier) )))) ;) (expression_statement "state_machine_regs.line = (uint)in_stack_ffffff2c;" (assignment_expression "state_machine_regs.line = (uint)in_stack_ffffff2c" (field_expression "state_machine_regs.line" identifier . field_identifier) = (cast_expression "(uint)in_stack_ffffff2c" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6)" identifier = (call_expression "dwarf_vmatoa_1("d",ZEXT48(pcVar9) << 0x20,uVar6)" identifier (argument_list "("d",ZEXT48(pcVar9) << 0x20,uVar6)" ( (string_literal ""d"" " string_content ") , (binary_expression "ZEXT48(pcVar9) << 0x20" (call_expression "ZEXT48(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) << number_literal) , identifier )))) ;) (expression_statement "pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0," and Line by %s to %d",5)" identifier = (cast_expression "(char *)dcgettext(0," and Line by %s to %d",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," and Line by %s to %d",5)" identifier (argument_list "(0," and Line by %s to %d",5)" ( number_literal , (string_literal "" and Line by %s to %d"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (if_statement "if (state_machine_regs.view == 0) goto LAB_0005bb80;" if (parenthesized_expression "(state_machine_regs.view == 0)" ( (binary_expression "state_machine_regs.view == 0" (field_expression "state_machine_regs.view" identifier . field_identifier) == number_literal) )) (goto_statement "goto LAB_0005bb80;" goto statement_identifier ;)) (labeled_statement "LAB_0005b679:\n            uVar6 = state_machine_regs.view;" statement_identifier : (expression_statement "uVar6 = state_machine_regs.view;" (assignment_expression "uVar6 = state_machine_regs.view" identifier = (field_expression "state_machine_regs.view" identifier . field_identifier)) ;)) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0," (view %u)\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0," (view %u)\n")" identifier = (cast_expression "(char *)dcgettext(0," (view %u)\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," (view %u)\n")" identifier (argument_list "(0," (view %u)\n")" ( number_literal , (string_literal "" (view %u)\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (labeled_statement "LAB_0005b698:\n            state_machine_regs.view = state_machine_regs.view + 1;" statement_identifier : (expression_statement "state_machine_regs.view = state_machine_regs.view + 1;" (assignment_expression "state_machine_regs.view = state_machine_regs.view + 1" (field_expression "state_machine_regs.view" identifier . field_identifier) = (binary_expression "state_machine_regs.view + 1" (field_expression "state_machine_regs.view" identifier . field_identifier) + number_literal)) ;)) (goto_statement "goto LAB_0005b6a1;" goto statement_identifier ;) })) (switch_statement "switch(bVar12) {\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }" switch (parenthesized_expression "(bVar12)" ( identifier )) (compound_statement "{\n          case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;\n          case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;\n          case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;\n          case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;\n          case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;\n          case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;\n          case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;\n          case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;\n          case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;\n          case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;\n          case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;\n          default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);\n          }" { (case_statement "case 0:\n            in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;\n            iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);\n            break;" case number_literal : (expression_statement "in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7;" (assignment_expression "in_stack_ffffff30 = (DWARF2_Internal_LineInfo *)0x5bbb7" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5bbb7" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end);" (assignment_expression "iVar13 = process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end)" identifier = (call_expression "process_extended_line_op\n                               ((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,(uint)linfo._20_4_ >> 0x10 & 0xff,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(uint)linfo._20_4_ >> 0x10 & 0xff" (binary_expression "(uint)linfo._20_4_ >> 0x10" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal) & number_literal) , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + iVar13)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + iVar13)" ( (binary_expression "(int)&pDVar37->li_length + iVar13" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Copy");\n            printf(pcVar9);\n            if (state_machine_regs.view != 0) goto LAB_0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Copy");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Copy")" identifier = (cast_expression "(char *)dcgettext(0,"  Copy")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Copy")" identifier (argument_list "(0,"  Copy")" ( number_literal , (string_literal ""  Copy"" " string_content ") ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (if_statement "if (state_machine_regs.view != 0) goto LAB_0005b679;" if (parenthesized_expression "(state_machine_regs.view != 0)" ( (binary_expression "state_machine_regs.view != 0" (field_expression "state_machine_regs.view" identifier . field_identifier) != number_literal) )) (goto_statement "goto LAB_0005b679;" goto statement_identifier ;)) (labeled_statement "LAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (goto_statement "goto LAB_0005b698;" goto statement_identifier ;)) (case_statement "case 2:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            dVar29 = state_machine_regs.address;\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            local_ac = (uint)dVar30;\n            local_a8 = (int)(dVar30 >> 0x20);\n            if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }\n            iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);\n            puVar33 = local_54[0];\n            uVar6 = iVar13 * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = dVar29 + uVar6;\n            state_machine_regs.op_index = (uchar)local_54[0];\n            if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n            pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);\n            break;" case number_literal : (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar30 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "local_ac = (uint)dVar30;" (assignment_expression "local_ac = (uint)dVar30" identifier = (cast_expression "(uint)dVar30" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_a8 = (int)(dVar30 >> 0x20);" (assignment_expression "local_a8 = (int)(dVar30 >> 0x20)" identifier = (cast_expression "(int)(dVar30 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(dVar30 >> 0x20)" ( (binary_expression "dVar30 >> 0x20" identifier >> number_literal) )))) ;) (if_statement "if (linfo.li_max_ops_per_insn == '\x01') {\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn == '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);\n              uVar6 = (uint)lVar1;\n              iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);\n              state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);\n              if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }\n              pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);\n              pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);\n              pcVar9 = "  Advance PC by %s to 0x%s%s\n";\n              goto LAB_0005b8b1;\n            }" { (expression_statement "lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff);" (assignment_expression "lVar1 = (dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff)" identifier = (binary_expression "(dVar30 & 0xffffffff) * (ulonglong)(linfo._20_4_ & 0xff)" (parenthesized_expression "(dVar30 & 0xffffffff)" ( (binary_expression "dVar30 & 0xffffffff" identifier & number_literal) )) * (call_expression "(ulonglong)(linfo._20_4_ & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(linfo._20_4_ & 0xff)" ( (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal) ))))) ;) (expression_statement "uVar6 = (uint)lVar1;" (assignment_expression "uVar6 = (uint)lVar1" identifier = (cast_expression "(uint)lVar1" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20);" (assignment_expression "iVar13 = local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20)" identifier = (binary_expression "local_a8 * (linfo._20_4_ & 0xff) + (int)((ulonglong)lVar1 >> 0x20)" (binary_expression "local_a8 * (linfo._20_4_ & 0xff)" identifier * (parenthesized_expression "(linfo._20_4_ & 0xff)" ( (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal) ))) + (cast_expression "(int)((ulonglong)lVar1 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar1 >> 0x20)" ( (binary_expression "(ulonglong)lVar1 >> 0x20" (cast_expression "(ulonglong)lVar1" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))))) ;) (expression_statement "state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6);" (assignment_expression "state_machine_regs.address = state_machine_regs.address + CONCAT44(iVar13,uVar6)" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "state_machine_regs.address + CONCAT44(iVar13,uVar6)" (field_expression "state_machine_regs.address" identifier . field_identifier) + (call_expression "CONCAT44(iVar13,uVar6)" identifier (argument_list "(iVar13,uVar6)" ( identifier , identifier ))))) ;) (if_statement "if (iVar13 != 0 || uVar6 != 0) {\n                state_machine_regs.view = 0;\n              }" if (parenthesized_expression "(iVar13 != 0 || uVar6 != 0)" ( (binary_expression "iVar13 != 0 || uVar6 != 0" (binary_expression "iVar13 != 0" identifier != number_literal) || (binary_expression "uVar6 != 0" identifier != number_literal)) )) (compound_statement "{\n                state_machine_regs.view = 0;\n              }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);" (assignment_expression "pcVar5 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" identifier (argument_list "("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6);" (assignment_expression "pcVar10 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,uVar6)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,uVar6)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , identifier )))) ;) (expression_statement "pcVar9 = "  Advance PC by %s to 0x%s%s\n";" (assignment_expression "pcVar9 = "  Advance PC by %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005b8b1;" goto statement_identifier ;) })) (expression_statement "iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54);" (assignment_expression "iVar13 = __udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54)" identifier = (call_expression "__udivmoddi4(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54)" identifier (argument_list "(state_machine_regs.op_index + local_ac,\n                                  local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac),\n                                  linfo.li_max_ops_per_insn,0,local_54)" ( (binary_expression "state_machine_regs.op_index + local_ac" (field_expression "state_machine_regs.op_index" identifier . field_identifier) + identifier) , (binary_expression "local_a8 +\n                                  (uint)CARRY4((uint)state_machine_regs.op_index,local_ac)" identifier + (cast_expression "(uint)CARRY4((uint)state_machine_regs.op_index,local_ac)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)state_machine_regs.op_index,local_ac)" identifier (argument_list "((uint)state_machine_regs.op_index,local_ac)" ( (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) , identifier ))))) , (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar33 = local_54[0];" (assignment_expression "puVar33 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar6 = iVar13 * (linfo._20_4_ & 0xff);" (assignment_expression "uVar6 = iVar13 * (linfo._20_4_ & 0xff)" identifier = (binary_expression "iVar13 * (linfo._20_4_ & 0xff)" identifier * (parenthesized_expression "(linfo._20_4_ & 0xff)" ( (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal) )))) ;) (expression_statement "state_machine_regs.address = dVar29 + uVar6;" (assignment_expression "state_machine_regs.address = dVar29 + uVar6" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "dVar29 + uVar6" identifier + identifier)) ;) (expression_statement "state_machine_regs.op_index = (uchar)local_54[0];" (assignment_expression "state_machine_regs.op_index = (uchar)local_54[0]" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (cast_expression "(uchar)local_54[0]" ( (type_descriptor "uchar" type_identifier) ) (subscript_expression "local_54[0]" identifier [ number_literal ]))) ;) (if_statement "if (uVar6 != 0) {\n              state_machine_regs.view = 0;\n            }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n              state_machine_regs.view = 0;\n            }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" identifier (argument_list "("x",ZEXT48(puVar35) << 0x20,(uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac);" (assignment_expression "pcVar5 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,local_ac)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,local_ac)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , identifier )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");" (assignment_expression "pcVar10 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier (argument_list "(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( number_literal , (string_literal ""  Advance PC by %s to 0x%s[%d]%s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55);" (call_expression "printf(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55)" identifier (argument_list "(pcVar10,pcVar5,pcVar9,puVar33,&DAT_0007bc55)" ( identifier , identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);\n            state_machine_regs.line = (uint)in_stack_ffffff2c;\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar5,pcVar9);\n            break;" case number_literal : (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,1,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,1,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29);" (assignment_expression "in_stack_ffffff2c = (uchar *)(state_machine_regs.line + (uint)dVar29)" identifier = (cast_expression "(uchar *)(state_machine_regs.line + (uint)dVar29)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(state_machine_regs.line + (uint)dVar29)" ( (binary_expression "state_machine_regs.line + (uint)dVar29" (field_expression "state_machine_regs.line" identifier . field_identifier) + (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) ;) (expression_statement "state_machine_regs.line = (uint)in_stack_ffffff2c;" (assignment_expression "state_machine_regs.line = (uint)in_stack_ffffff2c" (field_expression "state_machine_regs.line" identifier . field_identifier) = (cast_expression "(uint)in_stack_ffffff2c" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""d"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier (argument_list "(0,"  Advance Line by %s to %d\n",5)" ( number_literal , (string_literal ""  Advance Line by %s to %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.file = (uint)dVar29;\n            break;" case number_literal : (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("d",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""d"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier (argument_list "(0,"  Set File Name to entry %s in the File Name Table\n")" ( number_literal , (string_literal ""  Set File Name to entry %s in the File Name Table\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (expression_statement "state_machine_regs.file = (uint)dVar29;" (assignment_expression "state_machine_regs.file = (uint)dVar29" (field_expression "state_machine_regs.file" identifier . field_identifier) = (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.column = (uint)dVar29;\n            break;" case number_literal : (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Set column to %s\n");" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Set column to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set column to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set column to %s\n")" identifier (argument_list "(0,"  Set column to %s\n")" ( number_literal , (string_literal ""  Set column to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (expression_statement "state_machine_regs.column = (uint)dVar29;" (assignment_expression "state_machine_regs.column = (uint)dVar29" (field_expression "state_machine_regs.column" identifier . field_identifier) = (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n            bVar23 = state_machine_regs.is_stmt == 0;\n            pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar5,pcVar9);\n            state_machine_regs.is_stmt = (uint)bVar23;\n            break;" case number_literal : (expression_statement "bVar23 = state_machine_regs.is_stmt == 0;" (assignment_expression "bVar23 = state_machine_regs.is_stmt == 0" identifier = (binary_expression "state_machine_regs.is_stmt == 0" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) == number_literal)) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23)" identifier = (call_expression "dwarf_vmatoa_1("d",(ulonglong)uVar6 << 0x20,(uint)bVar23)" identifier (argument_list "("d",(ulonglong)uVar6 << 0x20,(uint)bVar23)" ( (string_literal ""d"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n");" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Set is_stmt to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set is_stmt to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set is_stmt to %s\n")" identifier (argument_list "(0,"  Set is_stmt to %s\n")" ( number_literal , (string_literal ""  Set is_stmt to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (expression_statement "state_machine_regs.is_stmt = (uint)bVar23;" (assignment_expression "state_machine_regs.is_stmt = (uint)bVar23" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9);\n            state_machine_regs.basic_block = 1;\n            break;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Set basic block\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Set basic block\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set basic block\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set basic block\n")" identifier (argument_list "(0,"  Set basic block\n")" ( number_literal , (string_literal ""  Set basic block\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "state_machine_regs.basic_block = 1;" (assignment_expression "state_machine_regs.basic_block = 1" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n            if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }\n            uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);\n            state_machine_regs.address = state_machine_regs.address + uVar20;\n            if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }\n            pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);\n            pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);\n            pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";\nLAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);\n            break;" case number_literal : (if_statement "if (linfo.li_max_ops_per_insn == '\0') {\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\0')" ( (binary_expression "linfo.li_max_ops_per_insn == '\0'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Does not return */\n              pcVar2 = (code *)invalidInstructionException();\n              (*pcVar2)();\n            }" { comment (expression_statement "pcVar2 = (code *)invalidInstructionException();" (assignment_expression "pcVar2 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar2)();" (call_expression "(*pcVar2)()" (parenthesized_expression "(*pcVar2)" ( (pointer_expression "*pcVar2" * identifier) )) (argument_list "()" ( ))) ;) })) (expression_statement "uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);" (assignment_expression "uVar20 = (int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff)" identifier = (binary_expression "(int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff)" (cast_expression "(int)((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff))" ( (binary_expression "(ulonglong)(byte)~linfo.li_opcode_base /\n                          (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)" (cast_expression "(ulonglong)(byte)~linfo.li_opcode_base" ( (type_descriptor "ulonglong" type_identifier) ) (cast_expression "(byte)~linfo.li_opcode_base" ( (type_descriptor "byte" type_identifier) ) (unary_expression "~linfo.li_opcode_base" ~ (field_expression "linfo.li_opcode_base" identifier . field_identifier)))) / (call_expression "(ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(linfo._28_4_ & 0xff)" ( (binary_expression "linfo._28_4_ & 0xff" (field_expression "linfo._28_4_" identifier . field_identifier) & number_literal) )))) ))) * (parenthesized_expression "(linfo._20_4_ & 0xff)" ( (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal) )))) ;) (expression_statement "state_machine_regs.address = state_machine_regs.address + uVar20;" (assignment_expression "state_machine_regs.address = state_machine_regs.address + uVar20" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "state_machine_regs.address + uVar20" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (if_statement "if (uVar20 != 0) {\n              state_machine_regs.view = 0;\n            }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n              state_machine_regs.view = 0;\n            }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address);" (assignment_expression "pcVar5 = dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier = (call_expression "dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" identifier (argument_list "("x",(ulonglong)uVar6 << 0x20,(uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20);" (assignment_expression "pcVar10 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20)" identifier = (call_expression "dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,uVar20)" identifier (argument_list "("u",(ulonglong)uVar6 << 0x20,uVar20)" ( (string_literal ""u"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , identifier )))) ;) (expression_statement "pcVar9 = "  Advance PC by constant %s to 0x%s%s\n";" (assignment_expression "pcVar9 = "  Advance PC by constant %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by constant %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0005b8b1:\n            in_stack_ffffff2c = (uchar *)0x5;" statement_identifier : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9)" identifier (argument_list "(0,pcVar9)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55);" (call_expression "printf(pcVar9,pcVar10,pcVar5,&DAT_0007bc55)" identifier (argument_list "(pcVar9,pcVar10,pcVar5,&DAT_0007bc55)" ( identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);\n            if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }\n            state_machine_regs.address = eVar32 + state_machine_regs.address;\n            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n            in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);\n            pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);\n            pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar5,pcVar9);\n            pDVar37 = pDVar22;\n            break;" case number_literal : (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 3)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + 3)" ( (binary_expression "(int)&pDVar22->li_length + 3" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (pDVar22 < end) {\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }\n            else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }" if (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) (compound_statement "{\n              uVar20 = 2;\nLAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);\n              uVar6 = uVar20;\n            }" { (expression_statement "uVar20 = 2;" (assignment_expression "uVar20 = 2" identifier = number_literal) ;) (labeled_statement "LAB_0005d4cd:\n              eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);" statement_identifier : (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar37,uVar20);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar37,uVar20)" identifier = (call_expression "(*byte_get)((uchar *)pDVar37,uVar20)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar37,uVar20)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "uVar6 = uVar20;" (assignment_expression "uVar6 = uVar20" identifier = identifier) ;) }) (else_clause "else {\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }" else (compound_statement "{\n              eVar32 = 0;\n              if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;\n            }" { (expression_statement "eVar32 = 0;" (assignment_expression "eVar32 = 0" identifier = number_literal) ;) (if_statement "if ((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))\n              goto LAB_0005d4cd;" if (parenthesized_expression "((pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8))" ( (binary_expression "(pDVar37 < end) && (uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8)" (parenthesized_expression "(pDVar37 < end)" ( (binary_expression "pDVar37 < end" identifier < identifier) )) && (parenthesized_expression "(uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8)" ( (comma_expression "uVar20 = (int)end - (int)pDVar37, eVar32 = 0, uVar20 - 1 < 8" (assignment_expression "uVar20 = (int)end - (int)pDVar37" identifier = (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier))) , (comma_expression "eVar32 = 0, uVar20 - 1 < 8" (assignment_expression "eVar32 = 0" identifier = number_literal) , (binary_expression "uVar20 - 1 < 8" (binary_expression "uVar20 - 1" identifier - number_literal) < number_literal))) ))) )) (goto_statement "goto LAB_0005d4cd;" goto statement_identifier ;)) }))) (expression_statement "state_machine_regs.address = eVar32 + state_machine_regs.address;" (assignment_expression "state_machine_regs.address = eVar32 + state_machine_regs.address" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "eVar32 + state_machine_regs.address" identifier + (field_expression "state_machine_regs.address" identifier . field_identifier))) ;) (expression_statement "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;" (assignment_expression "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) = (binary_expression "state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) & number_literal)) ;) (expression_statement "in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address);" (assignment_expression "in_stack_ffffff2c =\n                 (uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address)" identifier = (cast_expression "(uchar *)dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dwarf_vmatoa_1("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address)" identifier (argument_list "("x",(ulonglong)uVar6 << 0x20,\n                                         (uint)state_machine_regs.address)" ( (string_literal ""x"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)state_machine_regs.address" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) ))))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32)" identifier = (call_expression "dwarf_vmatoa_1("u",(ulonglong)uVar6 << 0x20,(uint)eVar32)" identifier (argument_list "("u",(ulonglong)uVar6 << 0x20,(uint)eVar32)" ( (string_literal ""u"" " string_content ") , (binary_expression "(ulonglong)uVar6 << 0x20" (cast_expression "(ulonglong)uVar6" ( (type_descriptor "ulonglong" type_identifier) ) identifier) << number_literal) , (cast_expression "(uint)eVar32" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier (argument_list "(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( number_literal , (string_literal ""  Advance PC by fixed size amount %s to 0x%s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (expression_statement "pDVar37 = pDVar22;" (assignment_expression "pDVar37 = pDVar22" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n            pcVar9 = "  Set prologue_end to true\n";\n            goto LAB_0005b70b;" case number_literal : (expression_statement "pcVar9 = "  Set prologue_end to true\n";" (assignment_expression "pcVar9 = "  Set prologue_end to true\n"" identifier = (string_literal ""  Set prologue_end to true\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005b70b;" goto statement_identifier ;)) (case_statement "case 0xb:\n            pcVar9 = "  Set epilogue_begin to true\n";\nLAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar9);\n            printf(pcVar9);\n            pDVar22 = pDVar37;\n            if (end_of_sequence <= pDVar37) goto LAB_0005b730;\n            goto LAB_0005b6b6;" case number_literal : (expression_statement "pcVar9 = "  Set epilogue_begin to true\n";" (assignment_expression "pcVar9 = "  Set epilogue_begin to true\n"" identifier = (string_literal ""  Set epilogue_begin to true\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0005b70b:\n            in_stack_ffffff2c = (uchar *)0x5;" statement_identifier : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9)" identifier (argument_list "(0,pcVar9)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "pDVar22 = pDVar37;" (assignment_expression "pDVar22 = pDVar37" identifier = identifier) ;) (if_statement "if (end_of_sequence <= pDVar37) goto LAB_0005b730;" if (parenthesized_expression "(end_of_sequence <= pDVar37)" ( (binary_expression "end_of_sequence <= pDVar37" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;)) (case_statement "case 0xc:\n            puVar35 = &bytes_read;\n            in_stack_ffffff30 = end;\n            dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar5,pcVar9);\n            break;" case number_literal : (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n");" (assignment_expression "pcVar5 = (char *)dcgettext(0,"  Set ISA to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set ISA to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set ISA to %s\n")" identifier (argument_list "(0,"  Set ISA to %s\n")" ( number_literal , (string_literal ""  Set ISA to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar5,pcVar9);" (call_expression "printf(pcVar5,pcVar9)" identifier (argument_list "(pcVar5,pcVar9)" ( identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "default:\n            in_stack_ffffff2c = (uchar *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar9,(uint)bVar12);\n            if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }\n            putc(10,*(FILE **)puVar3);" default : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ")" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ")" identifier (argument_list "(0,"  Unknown opcode %d with operands: ")" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") ))))) ;) (expression_statement "printf(pcVar9,(uint)bVar12);" (call_expression "printf(pcVar9,(uint)bVar12)" identifier (argument_list "(pcVar9,(uint)bVar12)" ( identifier , (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier) ))) ;) (if_statement "if ((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)) {\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }" if (parenthesized_expression "((local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0))" ( (binary_expression "(local_94 != (uchar *)0x0) && (uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)" (parenthesized_expression "(local_94 != (uchar *)0x0)" ( (binary_expression "local_94 != (uchar *)0x0" identifier != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0)" ( (comma_expression "uVar6 = (uint)local_94[bVar12 - 1], uVar6 != 0" (assignment_expression "uVar6 = (uint)local_94[bVar12 - 1]" identifier = (cast_expression "(uint)local_94[bVar12 - 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_94[bVar12 - 1]" identifier [ (binary_expression "bVar12 - 1" identifier - number_literal) ]))) , (binary_expression "uVar6 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n              puVar35 = &bytes_read;\n              for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }\n              in_stack_ffffff30 = end;\n              dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n              pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n              in_stack_ffffff2c = "";\n              printf("0x%s%s",pcVar9);\n              pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            }" { (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (for_statement "for (; uVar6 != 1; uVar6 = uVar6 - 1) {\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }" for ( ; (binary_expression "uVar6 != 1" identifier != number_literal) ; (assignment_expression "uVar6 = uVar6 - 1" identifier = (binary_expression "uVar6 - 1" identifier - number_literal)) ) (compound_statement "{\n                puVar36 = puVar35;\n                dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n              }" { (expression_statement "puVar36 = puVar35;" (assignment_expression "puVar36 = puVar35" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" identifier (argument_list "("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar36) << 0x20" (call_expression "ZEXT48(puVar36)" identifier (argument_list "(puVar36)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf("0x%s%s",pcVar9,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",pcVar9,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",pcVar9,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) })) (expression_statement "in_stack_ffffff30 = end;" (assignment_expression "in_stack_ffffff30 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = "";" (assignment_expression "in_stack_ffffff2c = """ identifier = (string_literal """" " ")) ;) (expression_statement "printf("0x%s%s",pcVar9);" (call_expression "printf("0x%s%s",pcVar9)" identifier (argument_list "("0x%s%s",pcVar9)" ( (string_literal ""0x%s%s"" " string_content ") , identifier ))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) })) (expression_statement "putc(10,*(FILE **)puVar3);" (call_expression "putc(10,*(FILE **)puVar3)" identifier (argument_list "(10,*(FILE **)puVar3)" ( number_literal , (pointer_expression "*(FILE **)puVar3" * (cast_expression "(FILE **)puVar3" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) })) (labeled_statement "LAB_0005b6a1:\n          pDVar22 = pDVar37;" statement_identifier : (expression_statement "pDVar22 = pDVar37;" (assignment_expression "pDVar22 = pDVar37" identifier = identifier) ;)) (if_statement "if (end_of_sequence <= pDVar37) goto LAB_0005b730;" if (parenthesized_expression "(end_of_sequence <= pDVar37)" ( (binary_expression "end_of_sequence <= pDVar37" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;) })) (labeled_statement "LAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (expression_statement "bVar23 = end < pDVar37;" (assignment_expression "bVar23 = end < pDVar37" identifier = (binary_expression "end < pDVar37" identifier < identifier)) ;) (expression_statement "bVar26 = end == pDVar37;" (assignment_expression "bVar26 = end == pDVar37" identifier = (binary_expression "end == pDVar37" identifier == identifier)) ;) (expression_statement "pdVar34 = extraout_ECX_00;" (assignment_expression "pdVar34 = extraout_ECX_00" identifier = identifier) ;) (if_statement "if (end <= pDVar37) break;" if (parenthesized_expression "(end <= pDVar37)" ( (binary_expression "end <= pDVar37" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0005b368;" goto statement_identifier ;) })) (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0," No Line Number Statements.\n")" identifier = (cast_expression "(char *)dcgettext(0," No Line Number Statements.\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," No Line Number Statements.\n")" identifier (argument_list "(0," No Line Number Statements.\n")" ( number_literal , (string_literal "" No Line Number Statements.\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "bVar23 = end < pDVar37;" (assignment_expression "bVar23 = end < pDVar37" identifier = (binary_expression "end < pDVar37" identifier < identifier)) ;) (expression_statement "bVar26 = end == pDVar37;" (assignment_expression "bVar26 = end == pDVar37" identifier = (binary_expression "end == pDVar37" identifier == identifier)) ;) (expression_statement "pdVar34 = extraout_ECX;" (assignment_expression "pdVar34 = extraout_ECX" identifier = identifier) ;) }) while (parenthesized_expression "(pDVar37 < end)" ( (binary_expression "pDVar37 < end" identifier < identifier) )) ;)) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "uVar27 = (do_debug_lines & 2U) == 0;" (assignment_expression "uVar27 = (do_debug_lines & 2U) == 0" identifier = (binary_expression "(do_debug_lines & 2U) == 0" (parenthesized_expression "(do_debug_lines & 2U)" ( (binary_expression "do_debug_lines & 2U" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (!(bool)uVar27) {\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }" if (parenthesized_expression "(!(bool)uVar27)" ( (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n      pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;\n      introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );\n    }" { (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)0x5b772" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x5b772" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34);" (call_expression "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34)" identifier (argument_list "((dwarf_section *)section->name,(bfd_boolean)&section->filename,pdVar34)" ( (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 "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );" statement_identifier : (do_statement "do {\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      } while( true );" do (compound_statement "{\n        local_6c = ".debug_line.";\n        iVar13 = 0xc;\n        pbVar16 = (byte *)section->name;\n        do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);\n        bVar23 = false;\n        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;\n        if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\n        dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);\n        local_bc = pDVar22;\n        local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n        linfo.li_length._0_4_ = saved_linfo_11206;\n        linfo.li_length._4_4_ = DAT_000b75e4;\n        linfo._8_4_ = DAT_000b75e8;\n        linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n        linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n        linfo._20_4_ = DAT_000b75f4;\n        linfo.li_line_base = DAT_000b75f8;\n        linfo._28_4_ = DAT_000b75fc;\n        linfo.li_offset_size = DAT_000b7600;\nLAB_0005adb0:\n        state_machine_regs.address = dVar29;\n        if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }\n        putc(10,*(FILE **)local_9c);\n        uVar25 = end < local_bc;\n        uVar27 = end == local_bc;\n        dVar29 = state_machine_regs.address;\n        if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }\n      }" { (expression_statement "local_6c = ".debug_line.";" (assignment_expression "local_6c = ".debug_line."" identifier = (string_literal "".debug_line."" " string_content ")) ;) (expression_statement "iVar13 = 0xc;" (assignment_expression "iVar13 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar16 = (byte *)section->name;" (assignment_expression "pbVar16 = (byte *)section->name" identifier = (cast_expression "(byte *)section->name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (do_statement "do {\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        } while ((bool)uVar27);" do (compound_statement "{\n          if (iVar13 == 0) break;\n          iVar13 = iVar13 + -1;\n          uVar25 = *pbVar16 < (byte)*local_6c;\n          uVar27 = *pbVar16 == *local_6c;\n          pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);\n        }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "uVar25 = *pbVar16 < (byte)*local_6c;" (assignment_expression "uVar25 = *pbVar16 < (byte)*local_6c" identifier = (binary_expression "*pbVar16 < (byte)*local_6c" (pointer_expression "*pbVar16" * identifier) < (binary_expression "(byte)*local_6c" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "uVar27 = *pbVar16 == *local_6c;" (assignment_expression "uVar27 = *pbVar16 == *local_6c" identifier = (binary_expression "*pbVar16 == *local_6c" (pointer_expression "*pbVar16" * identifier) == (pointer_expression "*local_6c" * identifier))) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1);" (assignment_expression "local_6c = (char *)((byte *)local_6c + (uint)bVar28 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)local_6c + (uint)bVar28 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)local_6c + (uint)bVar28 * -2 + 1)" ( (binary_expression "(byte *)local_6c + (uint)bVar28 * -2 + 1" (binary_expression "(byte *)local_6c + (uint)bVar28 * -2" (cast_expression "(byte *)local_6c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "((bool)uVar27)" ( (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (expression_statement "bVar23 = false;" (assignment_expression "bVar23 = false" identifier = false) ;) (expression_statement "bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;" (assignment_expression "bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25" identifier = (binary_expression "(!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25" (parenthesized_expression "(!(bool)uVar25 && !(bool)uVar27)" ( (binary_expression "!(bool)uVar25 && !(bool)uVar27" (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar27" ! (cast_expression "(bool)uVar27" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier))) ;) (if_statement "if (bVar26) {\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }\n        else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" if (parenthesized_expression "(bVar26)" ( identifier )) (compound_statement "{\n          iVar13 = 0x10;\n          pbVar16 = (byte *)section->name;\n          pbVar19 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);\n          if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;\n          linfo.li_offset_size = DAT_000b7600;\n          linfo.li_length._0_4_ = saved_linfo_11206;\n          linfo.li_length._4_4_ = DAT_000b75e4;\n          linfo.li_version = (ushort)DAT_000b75e8;\n          linfo._10_2_ = DAT_000b75e8._2_2_;\n          linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n          linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n          linfo._20_4_ = DAT_000b75f4;\n          linfo.li_line_base = DAT_000b75f8;\n          linfo.li_line_range = (uchar)DAT_000b75fc;\n          linfo.li_opcode_base = DAT_000b75fc._1_1_;\n          linfo._30_2_ = DAT_000b75fc._2_2_;\n          if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }\n          state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          state_machine_regs.address._4_4_ = 0;\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = (uchar *)0x0;\n          local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          local_90 = (uchar *)0x0;\n          pDVar22 = local_bc;\n          end_of_sequence = (uchar *)end;\n          if (local_bc < end) goto LAB_0005ab5e;\n        }" { (expression_statement "iVar13 = 0x10;" (assignment_expression "iVar13 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar16 = (byte *)section->name;" (assignment_expression "pbVar16 = (byte *)section->name" identifier = (cast_expression "(byte *)section->name" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "section->name" identifier -> field_identifier))) ;) (expression_statement "pbVar19 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar19 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          } while (bVar26);" do (compound_statement "{\n            if (iVar13 == 0) break;\n            iVar13 = iVar13 + -1;\n            bVar23 = *pbVar16 < *pbVar19;\n            bVar26 = *pbVar16 == *pbVar19;\n            pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;\n            pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;\n          }" { (if_statement "if (iVar13 == 0) break;" if (parenthesized_expression "(iVar13 == 0)" ( (binary_expression "iVar13 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar13 = iVar13 + -1;" (assignment_expression "iVar13 = iVar13 + -1" identifier = (binary_expression "iVar13 + -1" identifier + number_literal)) ;) (expression_statement "bVar23 = *pbVar16 < *pbVar19;" (assignment_expression "bVar23 = *pbVar16 < *pbVar19" identifier = (binary_expression "*pbVar16 < *pbVar19" (pointer_expression "*pbVar16" * identifier) < (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "bVar26 = *pbVar16 == *pbVar19;" (assignment_expression "bVar26 = *pbVar16 == *pbVar19" identifier = (binary_expression "*pbVar16 == *pbVar19" (pointer_expression "*pbVar16" * identifier) == (pointer_expression "*pbVar19" * identifier))) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1;" (assignment_expression "pbVar19 = pbVar19 + (uint)bVar28 * -2 + 1" identifier = (binary_expression "pbVar19 + (uint)bVar28 * -2 + 1" (binary_expression "pbVar19 + (uint)bVar28 * -2" identifier + (binary_expression "(uint)bVar28 * -2" (cast_expression "(uint)bVar28" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar26)" ( identifier )) ;) (if_statement "if ((!bVar23 && !bVar26) == bVar23) goto LAB_0005c150;" if (parenthesized_expression "((!bVar23 && !bVar26) == bVar23)" ( (binary_expression "(!bVar23 && !bVar26) == bVar23" (parenthesized_expression "(!bVar23 && !bVar26)" ( (binary_expression "!bVar23 && !bVar26" (unary_expression "!bVar23" ! identifier) && (unary_expression "!bVar26" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005c150;" goto statement_identifier ;)) (expression_statement "linfo.li_offset_size = DAT_000b7600;" (assignment_expression "linfo.li_offset_size = DAT_000b7600" (field_expression "linfo.li_offset_size" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._0_4_ = saved_linfo_11206;" (assignment_expression "linfo.li_length._0_4_ = saved_linfo_11206" (field_expression "linfo.li_length._0_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._4_4_ = DAT_000b75e4;" (assignment_expression "linfo.li_length._4_4_ = DAT_000b75e4" (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_version = (ushort)DAT_000b75e8;" (assignment_expression "linfo.li_version = (ushort)DAT_000b75e8" (field_expression "linfo.li_version" identifier . field_identifier) = (cast_expression "(ushort)DAT_000b75e8" ( (type_descriptor "ushort" type_identifier) ) identifier)) ;) (expression_statement "linfo._10_2_ = DAT_000b75e8._2_2_;" (assignment_expression "linfo._10_2_ = DAT_000b75e8._2_2_" (field_expression "linfo._10_2_" identifier . field_identifier) = (field_expression "DAT_000b75e8._2_2_" identifier . field_identifier)) ;) (expression_statement "linfo.li_prologue_length._0_4_ = DAT_000b75ec;" (assignment_expression "linfo.li_prologue_length._0_4_ = DAT_000b75ec" (field_expression "linfo.li_prologue_length._0_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._4_4_ = DAT_000b75f0;" (assignment_expression "linfo.li_prologue_length._4_4_ = DAT_000b75f0" (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._20_4_ = DAT_000b75f4;" (assignment_expression "linfo._20_4_ = DAT_000b75f4" (field_expression "linfo._20_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_base = DAT_000b75f8;" (assignment_expression "linfo.li_line_base = DAT_000b75f8" (field_expression "linfo.li_line_base" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_range = (uchar)DAT_000b75fc;" (assignment_expression "linfo.li_line_range = (uchar)DAT_000b75fc" (field_expression "linfo.li_line_range" identifier . field_identifier) = (cast_expression "(uchar)DAT_000b75fc" ( (type_descriptor "uchar" type_identifier) ) identifier)) ;) (expression_statement "linfo.li_opcode_base = DAT_000b75fc._1_1_;" (assignment_expression "linfo.li_opcode_base = DAT_000b75fc._1_1_" (field_expression "linfo.li_opcode_base" identifier . field_identifier) = (field_expression "DAT_000b75fc._1_1_" identifier . field_identifier)) ;) (expression_statement "linfo._30_2_ = DAT_000b75fc._2_2_;" (assignment_expression "linfo._30_2_ = DAT_000b75fc._2_2_" (field_expression "linfo._30_2_" identifier . field_identifier) = (field_expression "DAT_000b75fc._2_2_" identifier . field_identifier)) ;) (if_statement "if ((uchar)DAT_000b75fc == '\0') {\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }" if (parenthesized_expression "((uchar)DAT_000b75fc == '\0')" ( (binary_expression "(uchar)DAT_000b75fc == '\0'" (cast_expression "(uchar)DAT_000b75fc" ( (type_descriptor "uchar" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            end_of_sequence = (uchar *)end;\n            pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);\n            warn(pcVar9);\n            dVar29 = state_machine_regs.address;\n            goto LAB_0005d718;\n          }" { (expression_statement "end_of_sequence = (uchar *)end;" (assignment_expression "end_of_sequence = (uchar *)end" identifier = (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5)" identifier (argument_list "(0,\n                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                                       ,5)" ( number_literal , (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (goto_statement "goto LAB_0005d718;" goto statement_identifier ;) })) (expression_statement "state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff;" (assignment_expression "state_machine_regs.is_stmt = DAT_000b75f4 >> 0x10 & 0xff" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (binary_expression "DAT_000b75f4 >> 0x10 & 0xff" (binary_expression "DAT_000b75f4 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._0_4_ = 0;" (assignment_expression "state_machine_regs.address._0_4_ = 0" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.op_index = '\0';" (assignment_expression "state_machine_regs.op_index = '\0'" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.end_sequence = '\0';" (assignment_expression "state_machine_regs.end_sequence = '\0'" (field_expression "state_machine_regs.end_sequence" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.address._4_4_ = 0;" (assignment_expression "state_machine_regs.address._4_4_ = 0" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.file = 1;" (assignment_expression "state_machine_regs.file = 1" (field_expression "state_machine_regs.file" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.line = 1;" (assignment_expression "state_machine_regs.line = 1" (field_expression "state_machine_regs.line" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.column = 0;" (assignment_expression "state_machine_regs.column = 0" (field_expression "state_machine_regs.column" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.basic_block = 0;" (assignment_expression "state_machine_regs.basic_block = 0" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.last_file_entry = 0;" (assignment_expression "state_machine_regs.last_file_entry = 0" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = number_literal) ;) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (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 "local_94 = (uchar *)0x0;" (assignment_expression "local_94 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)0x0;" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)0x0" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_90 = (uchar *)0x0;" (assignment_expression "local_90 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar22 = local_bc;" (assignment_expression "pDVar22 = local_bc" identifier = identifier) ;) (expression_statement "end_of_sequence = (uchar *)end;" (assignment_expression "end_of_sequence = (uchar *)end" identifier = (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (local_bc < end) goto LAB_0005ab5e;" if (parenthesized_expression "(local_bc < end)" ( (binary_expression "local_bc < end" identifier < identifier) )) (goto_statement "goto LAB_0005ab5e;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" else (compound_statement "{\nLAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);\n          dVar29 = state_machine_regs.address;\n          if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }\n          if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }\n          state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n          state_machine_regs.address._0_4_ = 0;\n          state_machine_regs.op_index = '\0';\n          state_machine_regs.end_sequence = '\0';\n          uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;\n          state_machine_regs.address._4_4_ = 0;\n          pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));\n          state_machine_regs.view = 0;\n          state_machine_regs.file = 1;\n          state_machine_regs.line = 1;\n          state_machine_regs.column = 0;\n          state_machine_regs.basic_block = 0;\n          state_machine_regs.last_file_entry = 0;\n          if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }\n          if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }\n          local_b4 = 0;\n          local_a4 = (undefined4 *)0x0;\n          pDVar15 = pDVar22;\n          if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }\n          pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);\n          if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }\nLAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;\n          pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );\n          printf(pcVar9);\n          saved_linfo_11206 = (undefined4)linfo.li_length;\n          DAT_000b75e4 = linfo.li_length._4_4_;\n          DAT_000b75e8._0_2_ = linfo.li_version;\n          DAT_000b75e8._2_2_ = linfo._10_2_;\n          DAT_000b75ec = (undefined4)linfo.li_prologue_length;\n          DAT_000b75f0 = linfo.li_prologue_length._4_4_;\n          DAT_000b75f4._0_1_ = linfo.li_min_insn_length;\n          DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;\n          DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;\n          DAT_000b75f4._3_1_ = linfo._23_1_;\n          DAT_000b75f8 = linfo.li_line_base;\n          DAT_000b75fc._0_1_ = linfo.li_line_range;\n          DAT_000b75fc._1_1_ = linfo.li_opcode_base;\n          DAT_000b75fc._2_2_ = linfo._30_2_;\n          DAT_000b7600 = linfo.li_offset_size;\n          if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" { (labeled_statement "LAB_0005c150:\n          local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);" statement_identifier : (expression_statement "local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34);" (assignment_expression "local_90 = read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34)" identifier = (call_expression "read_debug_line_header\n                               ((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34)" identifier (argument_list "((dwarf_section *)&linfo,(uchar *)&end_of_sequence,in_stack_ffffff2c,\n                                pDVar37,in_stack_ffffff34)" ( (cast_expression "(dwarf_section *)&linfo" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&linfo" & identifier)) , (cast_expression "(uchar *)&end_of_sequence" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&end_of_sequence" & identifier)) , identifier , identifier , identifier )))) ;)) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if (local_90 == (uchar *)0x0) {\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }" if (parenthesized_expression "(local_90 == (uchar *)0x0)" ( (binary_expression "local_90 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n            state_machine_regs.address._0_4_ = (undefined4)dVar29;\n            return 0;\n          }" { (labeled_statement "LAB_0005d718:\n            state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" statement_identifier : (expression_statement "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" (assignment_expression "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20)" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (call_expression "(undefined4)(dVar29 >> 0x20)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "(dVar29 >> 0x20)" ( (binary_expression "dVar29 >> 0x20" identifier >> number_literal) )))) ;)) (expression_statement "state_machine_regs.address._0_4_ = (undefined4)dVar29;" (assignment_expression "state_machine_regs.address._0_4_ = (undefined4)dVar29" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (cast_expression "(undefined4)dVar29" ( (type_descriptor "undefined4" type_identifier) ) identifier)) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if (linfo.li_line_range == '\0') {\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }" if (parenthesized_expression "(linfo.li_line_range == '\0')" ( (binary_expression "linfo.li_line_range == '\0'" (field_expression "linfo.li_line_range" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(pcVar9);\n            linfo.li_line_range = '\x01';\n          }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "linfo.li_line_range = '\x01';" (assignment_expression "linfo.li_line_range = '\x01'" (field_expression "linfo.li_line_range" identifier . field_identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;" (assignment_expression "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (binary_expression "(uint)linfo._20_4_ >> 0x10 & 0xff" (binary_expression "(uint)linfo._20_4_ >> 0x10" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._0_4_ = 0;" (assignment_expression "state_machine_regs.address._0_4_ = 0" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.op_index = '\0';" (assignment_expression "state_machine_regs.op_index = '\0'" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.end_sequence = '\0';" (assignment_expression "state_machine_regs.end_sequence = '\0'" (field_expression "state_machine_regs.end_sequence" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "uVar6 = (uint)linfo._28_4_ >> 8 & 0xff;" (assignment_expression "uVar6 = (uint)linfo._28_4_ >> 8 & 0xff" identifier = (binary_expression "(uint)linfo._28_4_ >> 8 & 0xff" (binary_expression "(uint)linfo._28_4_ >> 8" (cast_expression "(uint)linfo._28_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._28_4_" identifier . field_identifier)) >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._4_4_ = 0;" (assignment_expression "state_machine_regs.address._4_4_ = 0" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1));" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1))" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(local_90 + (uVar6 - 1))" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (uVar6 - 1))" ( (binary_expression "local_90 + (uVar6 - 1)" identifier + (parenthesized_expression "(uVar6 - 1)" ( (binary_expression "uVar6 - 1" identifier - number_literal) ))) )))) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.file = 1;" (assignment_expression "state_machine_regs.file = 1" (field_expression "state_machine_regs.file" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.line = 1;" (assignment_expression "state_machine_regs.line = 1" (field_expression "state_machine_regs.line" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.column = 0;" (assignment_expression "state_machine_regs.column = 0" (field_expression "state_machine_regs.column" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.basic_block = 0;" (assignment_expression "state_machine_regs.basic_block = 0" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.last_file_entry = 0;" (assignment_expression "state_machine_regs.last_file_entry = 0" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = number_literal) ;) (if_statement "if (end <= pDVar22) {\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }" if (parenthesized_expression "(end <= pDVar22)" ( (binary_expression "end <= pDVar22" identifier <= identifier) )) (compound_statement "{\n            pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(pcVar9,uVar6);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005d718;\n          }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier (argument_list "(0,"opcode base of %d extends beyond end of section\n",5)" ( number_literal , (string_literal ""opcode base of %d extends beyond end of section\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9,uVar6);" (call_expression "warn(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (expression_statement "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);" (assignment_expression "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier = (call_expression "CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier (argument_list "(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" ( (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (goto_statement "goto LAB_0005d718;" goto statement_identifier ;) })) (if_statement "if (4 < linfo.li_version) {\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }" if (parenthesized_expression "(4 < linfo.li_version)" ( (binary_expression "4 < linfo.li_version" number_literal < (field_expression "linfo.li_version" identifier . field_identifier)) )) (compound_statement "{\n            load_debug_section_with_follow(line_str,file);\n            pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);\n            pDVar37 = pDVar15;\n            if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }\n            local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;\n            dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);\n            pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);\n            if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }\nLAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);\n            warn(pcVar9);\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            goto LAB_0005adf9;\n          }" { (expression_statement "load_debug_section_with_follow(line_str,file);" (call_expression "load_debug_section_with_follow(line_str,file)" identifier (argument_list "(line_str,file)" ( identifier , identifier ))) ;) (expression_statement "pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6);" (assignment_expression "pDVar15 = (DWARF2_Internal_LineInfo *)(local_90 + uVar6)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(local_90 + uVar6)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + uVar6)" ( (binary_expression "local_90 + uVar6" identifier + identifier) )))) ;) (expression_statement "pDVar37 = pDVar15;" (assignment_expression "pDVar37 = pDVar15" identifier = identifier) ;) (if_statement "if (pDVar15 < end) {\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }\n            else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }" if (parenthesized_expression "(pDVar15 < end)" ( (binary_expression "pDVar15 < end" identifier < identifier) )) (compound_statement "{\n              iVar13 = 1;\nLAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n              local_ac = (uint)eVar32 & 0xff;\n              if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }\n            }" { (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005d415:\n              eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" statement_identifier : (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13)" identifier = (call_expression "(*byte_get)((uchar *)pDVar22,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,iVar13)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "local_ac = (uint)eVar32 & 0xff;" (assignment_expression "local_ac = (uint)eVar32 & 0xff" identifier = (binary_expression "(uint)eVar32 & 0xff" (cast_expression "(uint)eVar32" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (if_statement "if ((eVar32 & 0xff) != 0) {\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }" if (parenthesized_expression "((eVar32 & 0xff) != 0)" ( (binary_expression "(eVar32 & 0xff) != 0" (parenthesized_expression "(eVar32 & 0xff)" ( (binary_expression "eVar32 & 0xff" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                iVar13 = 0;\n                uVar6 = 0;\n                do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);\n              }" { (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (do_statement "do {\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                } while (iVar13 != 0 || local_ac != uVar6);" do (compound_statement "{\n                  read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);\n                  pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);\n                  read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n                  pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                  bVar23 = 0xfffffffe < uVar6;\n                  uVar6 = uVar6 + 1;\n                  iVar13 = iVar13 + (uint)bVar23;\n                }" { (expression_statement "read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end);" (call_expression "read_leb128((uchar *)pDVar37,&bytes_read,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,&bytes_read,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pbVar16 = (byte *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(byte *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (expression_statement "bVar23 = 0xfffffffe < uVar6;" (assignment_expression "bVar23 = 0xfffffffe < uVar6" identifier = (binary_expression "0xfffffffe < uVar6" number_literal < identifier)) ;) (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (expression_statement "iVar13 = iVar13 + (uint)bVar23;" (assignment_expression "iVar13 = iVar13 + (uint)bVar23" identifier = (binary_expression "iVar13 + (uint)bVar23" identifier + (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar13 != 0 || local_ac != uVar6)" ( (binary_expression "iVar13 != 0 || local_ac != uVar6" (binary_expression "iVar13 != 0" identifier != number_literal) || (binary_expression "local_ac != uVar6" identifier != identifier)) )) ;) })) }) (else_clause "else {\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }" else (compound_statement "{\n              iVar13 = (int)end - (int)pDVar22;\n              if (iVar13 - 1U < 8) goto LAB_0005d415;\n              local_ac = 0;\n            }" { (expression_statement "iVar13 = (int)end - (int)pDVar22;" (assignment_expression "iVar13 = (int)end - (int)pDVar22" identifier = (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar13 - 1U < 8) goto LAB_0005d415;" if (parenthesized_expression "(iVar13 - 1U < 8)" ( (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005d415;" goto statement_identifier ;)) (expression_statement "local_ac = 0;" (assignment_expression "local_ac = 0" identifier = number_literal) ;) }))) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)&bytes_read;" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)&bytes_read" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)&bytes_read" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&bytes_read" & identifier))) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar37,(uint *)local_bc,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read);" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + bytes_read)" ( (binary_expression "(int)&pDVar37->li_length + bytes_read" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + identifier) )))) ;) (if_statement "if (end == pDVar37) {\n              pcVar9 = "Corrupt directories list\n";\n            }\n            else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }" if (parenthesized_expression "(end == pDVar37)" ( (binary_expression "end == pDVar37" identifier == identifier) )) (compound_statement "{\n              pcVar9 = "Corrupt directories list\n";\n            }" { (expression_statement "pcVar9 = "Corrupt directories list\n";" (assignment_expression "pcVar9 = "Corrupt directories list\n"" identifier = (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ")) ;) }) (else_clause "else {\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }" else (compound_statement "{\n              local_b4._0_4_ = (uchar *)dVar29;\n              local_b4._4_4_ = (uint)(dVar29 >> 0x20);\n              local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);\n              if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }\n              local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n              if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }\n              pDVar37 = end;\n              dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n              local_94 = (uchar *)dVar30;\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }\n              pcVar9 = "Corrupt file name list\n";\n            }" { (expression_statement "local_b4._0_4_ = (uchar *)dVar29;" (assignment_expression "local_b4._0_4_ = (uchar *)dVar29" (field_expression "local_b4._0_4_" identifier . field_identifier) = (cast_expression "(uchar *)dVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_b4._4_4_ = (uint)(dVar29 >> 0x20);" (assignment_expression "local_b4._4_4_ = (uint)(dVar29 >> 0x20)" (field_expression "local_b4._4_4_" identifier . field_identifier) = (call_expression "(uint)(dVar29 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(dVar29 >> 0x20)" ( (binary_expression "dVar29 >> 0x20" identifier >> number_literal) )))) ;) (expression_statement "local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2);" (assignment_expression "local_a4 = (undefined4 *)xmalloc((int)(uchar *)local_b4 << 2)" identifier = (cast_expression "(undefined4 *)xmalloc((int)(uchar *)local_b4 << 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((int)(uchar *)local_b4 << 2)" identifier (argument_list "((int)(uchar *)local_b4 << 2)" ( (binary_expression "(int)(uchar *)local_b4 << 2" (cast_expression "(int)(uchar *)local_b4" ( (type_descriptor "int" primitive_type) ) (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) << number_literal) ))))) ;) (if_statement "if (local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0) {\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }" if (parenthesized_expression "(local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0)" ( (binary_expression "local_b4._4_4_ != 0 || (uchar *)local_b4 != (uchar *)0x0" (binary_expression "local_b4._4_4_ != 0" (field_expression "local_b4._4_4_" identifier . field_identifier) != number_literal) || (binary_expression "(uchar *)local_b4 != (uchar *)0x0" (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n                local_9c = (DWARF2_Internal_LineInfo *)0x0;\n                local_98 = 0;\n                do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);\n              }" { (expression_statement "local_9c = (DWARF2_Internal_LineInfo *)0x0;" (assignment_expression "local_9c = (DWARF2_Internal_LineInfo *)0x0" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (do_statement "do {\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                } while (local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c);" do (compound_statement "{\n                  if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }\n                  if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }\n                  bVar23 = 0xfffffffe < local_9c;\n                  local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);\n                  local_98 = local_98 + (uint)bVar23;\n                }" { (if_statement "if (local_ac != 0) {\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }" if (parenthesized_expression "(local_ac != 0)" ( (binary_expression "local_ac != 0" identifier != number_literal) )) (compound_statement "{\n                    local_94 = (uchar *)0x0;\n                    local_b8 = pDVar15;\n                    do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);\n                  }" { (expression_statement "local_94 = (uchar *)0x0;" (assignment_expression "local_94 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b8 = pDVar15;" (assignment_expression "local_b8 = pDVar15" identifier = identifier) ;) (do_statement "do {\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    } while ((uchar *)local_ac != local_94);" do (compound_statement "{\n                      dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);\n                      dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }\n                      if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }\n                      pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_94 = (uchar *)((int)local_94 + 1);\n                    }" { (expression_statement "dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar30 = read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "((uchar *)local_b8,(uint *)local_bc,0,(uchar *)end)" ( (cast_expression "(uchar *)local_b8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read);" (assignment_expression "pbVar16 = (byte *)((int)&local_b8->li_length + bytes_read)" identifier = (cast_expression "(byte *)((int)&local_b8->li_length + bytes_read)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_b8->li_length + bytes_read)" ( (binary_expression "(int)&local_b8->li_length + bytes_read" (cast_expression "(int)&local_b8->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_b8->li_length" & (field_expression "local_b8->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar31 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "(pbVar16,(uint *)local_bc,0,(uchar *)end)" ( identifier , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "uVar6 = linfo.li_offset_size;" (assignment_expression "uVar6 = linfo.li_offset_size" identifier = (field_expression "linfo.li_offset_size" identifier . field_identifier)) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (if_statement "if (end == pDVar37) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }" if (parenthesized_expression "(end == pDVar37)" ( (binary_expression "end == pDVar37" identifier == identifier) )) (compound_statement "{\n                        pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005c9e0;\n                      }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Corrupt directories list\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (goto_statement "goto LAB_0005c9e0;" goto statement_identifier ;) })) (if_statement "if (dVar30 == 1) {\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }" if (parenthesized_expression "(dVar30 == 1)" ( (binary_expression "dVar30 == 1" identifier == number_literal) )) (compound_statement "{\n                        if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }\n                      }" { (if_statement "if (dVar31 == 8) {\n                          local_a4[(int)local_9c] = pDVar37;\n                        }\n                        else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }" if (parenthesized_expression "(dVar31 == 8)" ( (binary_expression "dVar31 == 8" identifier == number_literal) )) (compound_statement "{\n                          local_a4[(int)local_9c] = pDVar37;\n                        }" { (expression_statement "local_a4[(int)local_9c] = pDVar37;" (assignment_expression "local_a4[(int)local_9c] = pDVar37" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) }) (else_clause "else if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }" else (if_statement "if (dVar31 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }" if (parenthesized_expression "(dVar31 == 0x1f)" ( (binary_expression "dVar31 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          local_a4[(int)local_9c] = puVar11;\n                        }" { (if_statement "if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }" if (parenthesized_expression "(linfo.li_offset_size < 9)" ( (binary_expression "linfo.li_offset_size < 9" (field_expression "linfo.li_offset_size" identifier . field_identifier) < number_literal) )) (compound_statement "{\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }\n                          }" { (if_statement "if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end) {\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }\n                            else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }" if (parenthesized_expression "((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end)" ( (binary_expression "(DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size) < end" (cast_expression "(DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar37->li_length + linfo.li_offset_size)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + linfo.li_offset_size)" ( (binary_expression "(int)&pDVar37->li_length + linfo.li_offset_size" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + (field_expression "linfo.li_offset_size" identifier . field_identifier)) ))) < identifier) )) (compound_statement "{\nLAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;\n                            }" { (labeled_statement "LAB_0005c92c:\n                              if (uVar6 - 1 < 8) goto LAB_0005c934;" statement_identifier : (if_statement "if (uVar6 - 1 < 8) goto LAB_0005c934;" if (parenthesized_expression "(uVar6 - 1 < 8)" ( (binary_expression "uVar6 - 1 < 8" (binary_expression "uVar6 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005c934;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }" else (compound_statement "{\nLAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }\n                            }" { (labeled_statement "LAB_0005c920:\n                              if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }" statement_identifier : (if_statement "if (pDVar37 < end) {\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }" if (parenthesized_expression "(pDVar37 < end)" ( (binary_expression "pDVar37 < end" identifier < identifier) )) (compound_statement "{\n                                uVar6 = (int)end - (int)pDVar37;\n                                goto LAB_0005c92c;\n                              }" { (expression_statement "uVar6 = (int)end - (int)pDVar37;" (assignment_expression "uVar6 = (int)end - (int)pDVar37" identifier = (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005c92c;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }" else (compound_statement "{\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar37->li_version) goto LAB_0005c920;\n                            uVar6 = 8;\nLAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);\n                          }" { (expression_statement "pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);" (assignment_expression "pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" identifier = (cast_expression "(char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" identifier (argument_list "(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (field_expression "linfo.li_offset_size" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "error(pcVar9,uVar6,8);" (call_expression "error(pcVar9,uVar6,8)" identifier (argument_list "(pcVar9,uVar6,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (end <= &pDVar37->li_version) goto LAB_0005c920;" if (parenthesized_expression "(end <= &pDVar37->li_version)" ( (binary_expression "end <= &pDVar37->li_version" identifier <= (pointer_expression "&pDVar37->li_version" & (field_expression "pDVar37->li_version" identifier -> field_identifier))) )) (goto_statement "goto LAB_0005c920;" goto statement_identifier ;)) (expression_statement "uVar6 = 8;" (assignment_expression "uVar6 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005c934:\n                            (*byte_get)((uchar *)pDVar37,uVar6);" statement_identifier : (expression_statement "(*byte_get)((uchar *)pDVar37,uVar6);" (call_expression "(*byte_get)((uchar *)pDVar37,uVar6)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar37,uVar6)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;)) }))) (expression_statement "puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));" (assignment_expression "puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" identifier = (call_expression "fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" identifier (argument_list "(CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" ( (call_expression "CONCAT44(in_stack_ffffff38,in_stack_ffffff34)" identifier (argument_list "(in_stack_ffffff38,in_stack_ffffff34)" ( identifier , identifier ))) )))) ;) (expression_statement "local_a4[(int)local_9c] = puVar11;" (assignment_expression "local_a4[(int)local_9c] = puVar11" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) })))) })) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "read_and_display_attr_value\n                                          (0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" identifier (argument_list "(0,(ulong)dVar31,0,(uchar *)pDVar37,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" ( number_literal , (cast_expression "(ulong)dVar31" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , number_literal , (cast_expression "(ulonglong)linfo.li_offset_size" ( (type_descriptor "ulonglong" type_identifier) ) (field_expression "linfo.li_offset_size" identifier . field_identifier)) , (binary_expression "linfo._8_4_ & 0xffff" (field_expression "linfo._8_4_" identifier . field_identifier) & number_literal) , (cast_expression "(debug_info *)0x0" ( (type_descriptor "debug_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , identifier , (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (char_literal "'\t'" ' escape_sequence ') ))))) ;) (expression_statement "local_94 = (uchar *)((int)local_94 + 1);" (assignment_expression "local_94 = (uchar *)((int)local_94 + 1)" identifier = (cast_expression "(uchar *)((int)local_94 + 1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_94 + 1)" ( (binary_expression "(int)local_94 + 1" (cast_expression "(int)local_94" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "((uchar *)local_ac != local_94)" ( (binary_expression "(uchar *)local_ac != local_94" (cast_expression "(uchar *)local_ac" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != identifier) )) ;) })) (if_statement "if (end == pDVar37) {\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }" if (parenthesized_expression "(end == pDVar37)" ( (binary_expression "end == pDVar37" identifier == identifier) )) (compound_statement "{\nLAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);\n                    warn(pcVar9);\n                    local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);\n                    if (local_60 < end) goto LAB_0005ca09;\n                    goto LAB_0005ccd9;\n                  }" { (labeled_statement "LAB_0005c9e0:\n                    pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Corrupt directories list\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Corrupt directories list\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);" (assignment_expression "local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (local_60 < end) goto LAB_0005ca09;" if (parenthesized_expression "(local_60 < end)" ( (binary_expression "local_60 < end" identifier < identifier) )) (goto_statement "goto LAB_0005ca09;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ccd9;" goto statement_identifier ;) })) (expression_statement "bVar23 = 0xfffffffe < local_9c;" (assignment_expression "bVar23 = 0xfffffffe < local_9c" identifier = (binary_expression "0xfffffffe < local_9c" number_literal < identifier)) ;) (expression_statement "local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1);" (assignment_expression "local_9c = (DWARF2_Internal_LineInfo *)((int)local_9c + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)local_9c + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_9c + 1)" ( (binary_expression "(int)local_9c + 1" (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_98 = local_98 + (uint)bVar23;" (assignment_expression "local_98 = local_98 + (uint)bVar23" identifier = (binary_expression "local_98 + (uint)bVar23" identifier + (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c)" ( (binary_expression "local_b4._4_4_ != local_98 ||\n                         (DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c" (binary_expression "local_b4._4_4_ != local_98" (field_expression "local_b4._4_4_" identifier . field_identifier) != identifier) || (binary_expression "(DWARF2_Internal_LineInfo *)(uchar *)local_b4 != local_9c" (cast_expression "(DWARF2_Internal_LineInfo *)(uchar *)local_b4" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) != identifier)) )) ;) })) (expression_statement "local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1);" (assignment_expression "local_60 = (DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar37->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar37->li_length + 1)" ( (binary_expression "(int)&pDVar37->li_length + 1" (cast_expression "(int)&pDVar37->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar37->li_length" & (field_expression "pDVar37->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (local_60 < end) {\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }\n              else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }" if (parenthesized_expression "(local_60 < end)" ( (binary_expression "local_60 < end" identifier < identifier) )) (compound_statement "{\nLAB_0005ca09:\n                iVar13 = 1;\nLAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);\n                local_7c = (uint)eVar32 & 0xff;\n                pDVar22 = local_60;\n                if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }\n              }" { (labeled_statement "LAB_0005ca09:\n                iVar13 = 1;" statement_identifier : (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;)) (labeled_statement "LAB_0005ca0e:\n                eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);" statement_identifier : (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar37,iVar13);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar37,iVar13)" identifier = (call_expression "(*byte_get)((uchar *)pDVar37,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar37,iVar13)" ( (cast_expression "(uchar *)pDVar37" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "local_7c = (uint)eVar32 & 0xff;" (assignment_expression "local_7c = (uint)eVar32 & 0xff" identifier = (binary_expression "(uint)eVar32 & 0xff" (cast_expression "(uint)eVar32" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal)) ;) (expression_statement "pDVar22 = local_60;" (assignment_expression "pDVar22 = local_60" identifier = identifier) ;) (if_statement "if ((eVar32 & 0xff) != 0) {\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }" if (parenthesized_expression "((eVar32 & 0xff) != 0)" ( (binary_expression "(eVar32 & 0xff) != 0" (parenthesized_expression "(eVar32 & 0xff)" ( (binary_expression "eVar32 & 0xff" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  iVar13 = 0;\n                  uVar6 = 0;\n                  do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);\n                }" { (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (do_statement "do {\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  } while (iVar13 != 0 || local_7c != uVar6);" do (compound_statement "{\n                    read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);\n                    pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n                    read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                    pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                    bVar23 = 0xfffffffe < uVar6;\n                    uVar6 = uVar6 + 1;\n                    iVar13 = iVar13 + (uint)bVar23;\n                  }" { (expression_statement "read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);" (call_expression "read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(byte *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);" (call_expression "read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "(pbVar16,(uint *)local_bc,0,(uchar *)end)" ( identifier , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (expression_statement "bVar23 = 0xfffffffe < uVar6;" (assignment_expression "bVar23 = 0xfffffffe < uVar6" identifier = (binary_expression "0xfffffffe < uVar6" number_literal < identifier)) ;) (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (expression_statement "iVar13 = iVar13 + (uint)bVar23;" (assignment_expression "iVar13 = iVar13 + (uint)bVar23" identifier = (binary_expression "iVar13 + (uint)bVar23" identifier + (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar13 != 0 || local_7c != uVar6)" ( (binary_expression "iVar13 != 0 || local_7c != uVar6" (binary_expression "iVar13 != 0" identifier != number_literal) || (binary_expression "local_7c != uVar6" identifier != identifier)) )) ;) })) }) (else_clause "else {\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }" else (compound_statement "{\n                if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;\nLAB_0005ccd9:\n                local_7c = 0;\n                pDVar22 = local_60;\n              }" { (if_statement "if ((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))\n                goto LAB_0005ca0e;" if (parenthesized_expression "((pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8))" ( (binary_expression "(pDVar37 < end) && (iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8)" (parenthesized_expression "(pDVar37 < end)" ( (binary_expression "pDVar37 < end" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)end - (int)pDVar37, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)end - (int)pDVar37" identifier = (binary_expression "(int)end - (int)pDVar37" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar37" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_0005ca0e;" goto statement_identifier ;)) (labeled_statement "LAB_0005ccd9:\n                local_7c = 0;" statement_identifier : (expression_statement "local_7c = 0;" (assignment_expression "local_7c = 0" identifier = number_literal) ;)) (expression_statement "pDVar22 = local_60;" (assignment_expression "pDVar22 = local_60" identifier = identifier) ;) }))) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar30 = read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,(uint *)local_bc,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_94 = (uchar *)dVar30;" (assignment_expression "local_94 = (uchar *)dVar30" identifier = (cast_expression "(uchar *)dVar30" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (if_statement "if (end != pDVar22) {\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }" if (parenthesized_expression "(end != pDVar22)" ( (binary_expression "end != pDVar22" identifier != identifier) )) (compound_statement "{\n                pcVar9 = (char *)((int)local_94 << 4);\n                local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);\n                local_b4 = dVar29;\n                if (local_94 == (uchar *)0x0) goto LAB_0005cd50;\n                puVar17 = (undefined4 *)((int)local_b8 + 4);\n                local_78 = (uchar *)0x0;\n                do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);\n                uVar6 = *(uint *)((int)local_b8 + 4);\n                if (uVar6 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;\n                pcVar9 = ".";\nLAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n                printf(pcVar5,pcVar9,uVar21);\n                goto LAB_0005c27f;\n              }" { (expression_statement "pcVar9 = (char *)((int)local_94 << 4);" (assignment_expression "pcVar9 = (char *)((int)local_94 << 4)" identifier = (cast_expression "(char *)((int)local_94 << 4)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_94 << 4)" ( (binary_expression "(int)local_94 << 4" (cast_expression "(int)local_94" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) )))) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9);" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)xcalloc(1,(size_t)pcVar9)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xcalloc(1,(size_t)pcVar9)" identifier (argument_list "(1,(size_t)pcVar9)" ( number_literal , (cast_expression "(size_t)pcVar9" ( (type_descriptor "size_t" primitive_type) ) identifier) ))))) ;) (expression_statement "local_b4 = dVar29;" (assignment_expression "local_b4 = dVar29" identifier = identifier) ;) (if_statement "if (local_94 == (uchar *)0x0) goto LAB_0005cd50;" if (parenthesized_expression "(local_94 == (uchar *)0x0)" ( (binary_expression "local_94 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;)) (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_78 = (uchar *)0x0;" (assignment_expression "local_78 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                } while (local_78 != local_94);" do (compound_statement "{\n                  if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }\n                  if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }\n                  local_78 = local_78 + 1;\n                  puVar17 = puVar17 + 4;\n                }" { (if_statement "if (local_7c != 0) {\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }" if (parenthesized_expression "(local_7c != 0)" ( (binary_expression "local_7c != 0" identifier != number_literal) )) (compound_statement "{\n                    local_8c = 0;\n                    local_9c = local_60;\n                    do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);\n                  }" { (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" identifier = number_literal) ;) (expression_statement "local_9c = local_60;" (assignment_expression "local_9c = local_60" identifier = identifier) ;) (do_statement "do {\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    } while (local_7c != local_8c);" do (compound_statement "{\n                      pDVar37 = end;\n                      dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);\n                      pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);\n                      dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);\n                      uVar6 = linfo.li_offset_size;\n                      local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n                      if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }\n                      if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }\nLAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;\n                      pcVar9 = (char *)section;\n                      pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');\n                      local_8c = local_8c + 1;\n                    }" { (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "((uchar *)local_9c,(uint *)local_bc,0,(uchar *)end)" ( (cast_expression "(uchar *)local_9c" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read);" (assignment_expression "pbVar16 = (byte *)((int)&local_9c->li_length + bytes_read)" identifier = (cast_expression "(byte *)((int)&local_9c->li_length + bytes_read)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_9c->li_length + bytes_read)" ( (binary_expression "(int)&local_9c->li_length + bytes_read" (cast_expression "(int)&local_9c->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_9c->li_length" & (field_expression "local_9c->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end);" (assignment_expression "dVar30 = read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,(uint *)local_bc,0,(uchar *)end)" identifier (argument_list "(pbVar16,(uint *)local_bc,0,(uchar *)end)" ( identifier , (cast_expression "(uint *)local_bc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "uVar6 = linfo.li_offset_size;" (assignment_expression "uVar6 = linfo.li_offset_size" identifier = (field_expression "linfo.li_offset_size" identifier . field_identifier)) ;) (expression_statement "local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "local_9c = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (if_statement "if (end == pDVar22) {\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }" if (parenthesized_expression "(end == pDVar22)" ( (binary_expression "end == pDVar22" identifier == identifier) )) (compound_statement "{\n                        pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                        warn(pcVar9);\n                        goto LAB_0005cd30;\n                      }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Corrupt file name list\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Corrupt file name list\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd30;" goto statement_identifier ;) })) (if_statement "if (dVar29 == 1) {\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }\n                      else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }" if (parenthesized_expression "(dVar29 == 1)" ( (binary_expression "dVar29 == 1" identifier == number_literal) )) (compound_statement "{\n                        if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }\n                      }" { (if_statement "if (dVar30 == 8) {\n                          puVar17[-1] = pDVar22;\n                        }\n                        else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }" if (parenthesized_expression "(dVar30 == 8)" ( (binary_expression "dVar30 == 8" identifier == number_literal) )) (compound_statement "{\n                          puVar17[-1] = pDVar22;\n                        }" { (expression_statement "puVar17[-1] = pDVar22;" (assignment_expression "puVar17[-1] = pDVar22" (subscript_expression "puVar17[-1]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }" else (if_statement "if (dVar30 == 0x1f) {\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }" if (parenthesized_expression "(dVar30 == 0x1f)" ( (binary_expression "dVar30 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                          if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }\n                          puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));\n                          puVar17[-1] = puVar11;\n                        }" { (if_statement "if (linfo.li_offset_size < 9) {\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }\n                          else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }" if (parenthesized_expression "(linfo.li_offset_size < 9)" ( (binary_expression "linfo.li_offset_size < 9" (field_expression "linfo.li_offset_size" identifier . field_identifier) < number_literal) )) (compound_statement "{\n                            if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }\n                          }" { (if_statement "if ((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end) {\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }\n                            else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }" if (parenthesized_expression "((DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end)" ( (binary_expression "(DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size) < end" (cast_expression "(DWARF2_Internal_LineInfo *)\n                                ((int)&pDVar22->li_length + linfo.li_offset_size)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + linfo.li_offset_size)" ( (binary_expression "(int)&pDVar22->li_length + linfo.li_offset_size" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + (field_expression "linfo.li_offset_size" identifier . field_identifier)) ))) < identifier) )) (compound_statement "{\nLAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;\n                            }" { (labeled_statement "LAB_0005cc49:\n                              if (uVar6 - 1 < 8) goto LAB_0005cc55;" statement_identifier : (if_statement "if (uVar6 - 1 < 8) goto LAB_0005cc55;" if (parenthesized_expression "(uVar6 - 1 < 8)" ( (binary_expression "uVar6 - 1 < 8" (binary_expression "uVar6 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005cc55;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }" else (compound_statement "{\nLAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }\n                            }" { (labeled_statement "LAB_0005cc3d:\n                              if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }" statement_identifier : (if_statement "if (pDVar22 < end) {\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }" if (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) (compound_statement "{\n                                uVar6 = (int)end - (int)pDVar22;\n                                goto LAB_0005cc49;\n                              }" { (expression_statement "uVar6 = (int)end - (int)pDVar22;" (assignment_expression "uVar6 = (int)end - (int)pDVar22" identifier = (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005cc49;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }" else (compound_statement "{\n                            pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);\n                            error(pcVar9,uVar6,8);\n                            if (end <= &pDVar22->li_version) goto LAB_0005cc3d;\n                            uVar6 = 8;\nLAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);\n                          }" { (expression_statement "pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5);" (assignment_expression "pcVar9 = (char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" identifier = (cast_expression "(char *)dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" identifier (argument_list "(0,\n                                                  "internal error: attempt to read %d byte of data in to %d sized variable"\n                                                  ,\n                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                                  ,linfo.li_offset_size,5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (field_expression "linfo.li_offset_size" identifier . field_identifier) , number_literal ))))) ;) (expression_statement "error(pcVar9,uVar6,8);" (call_expression "error(pcVar9,uVar6,8)" identifier (argument_list "(pcVar9,uVar6,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (end <= &pDVar22->li_version) goto LAB_0005cc3d;" if (parenthesized_expression "(end <= &pDVar22->li_version)" ( (binary_expression "end <= &pDVar22->li_version" identifier <= (pointer_expression "&pDVar22->li_version" & (field_expression "pDVar22->li_version" identifier -> field_identifier))) )) (goto_statement "goto LAB_0005cc3d;" goto statement_identifier ;)) (expression_statement "uVar6 = 8;" (assignment_expression "uVar6 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005cc55:\n                            (*byte_get)((uchar *)pDVar22,uVar6);" statement_identifier : (expression_statement "(*byte_get)((uchar *)pDVar22,uVar6);" (call_expression "(*byte_get)((uchar *)pDVar22,uVar6)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,uVar6)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;)) }))) (expression_statement "puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34));" (assignment_expression "puVar11 = fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" identifier = (call_expression "fetch_indirect_line_string\n                                              (CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" identifier (argument_list "(CONCAT44(in_stack_ffffff38,in_stack_ffffff34))" ( (call_expression "CONCAT44(in_stack_ffffff38,in_stack_ffffff34)" identifier (argument_list "(in_stack_ffffff38,in_stack_ffffff34)" ( identifier , identifier ))) )))) ;) (expression_statement "puVar17[-1] = puVar11;" (assignment_expression "puVar17[-1] = puVar11" (subscript_expression "puVar17[-1]" identifier [ number_literal ]) = identifier) ;) })))) }) (else_clause "else if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }" else (if_statement "if (dVar29 == 2) {\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }" if (parenthesized_expression "(dVar29 == 2)" ( (binary_expression "dVar29 == 2" identifier == number_literal) )) (compound_statement "{\n                        if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                      }" { (if_statement "if (dVar30 == 0xb) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }\n                        else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" if (parenthesized_expression "(dVar30 == 0xb)" ( (binary_expression "dVar30 == 0xb" identifier == number_literal) )) (compound_statement "{\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" { (if_statement "if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end) {\n                            iVar13 = 1;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }" if (parenthesized_expression "((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end)" ( (binary_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U) < end" (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 1U)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + 1U)" ( (binary_expression "(int)&pDVar22->li_length + 1U" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + number_literal) ))) < identifier) )) (compound_statement "{\n                            iVar13 = 1;\n                          }" { (expression_statement "iVar13 = 1;" (assignment_expression "iVar13 = 1" identifier = number_literal) ;) }) (else_clause "else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }" else (if_statement "if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)) {\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }" if (parenthesized_expression "((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))" ( (binary_expression "(end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)" (parenthesized_expression "(end <= pDVar22)" ( (binary_expression "end <= pDVar22" identifier <= identifier) )) || (parenthesized_expression "(iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)" ( (comma_expression "iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U" (assignment_expression "iVar13 = (int)end - (int)pDVar22" identifier = (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar13 - 1U" number_literal < (binary_expression "iVar13 - 1U" identifier - number_literal))) ))) )) (compound_statement "{\nLAB_0005ce4f:\n                            *puVar17 = 0;\n                            goto LAB_0005cb51;\n                          }" { (labeled_statement "LAB_0005ce4f:\n                            *puVar17 = 0;" statement_identifier : (expression_statement "*puVar17 = 0;" (assignment_expression "*puVar17 = 0" (pointer_expression "*puVar17" * identifier) = number_literal) ;)) (goto_statement "goto LAB_0005cb51;" goto statement_identifier ;) })))) (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13)" identifier = (call_expression "(*byte_get)((uchar *)pDVar22,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,iVar13)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "*puVar17 = (int)eVar32;" (assignment_expression "*puVar17 = (int)eVar32" (pointer_expression "*puVar17" * identifier) = (cast_expression "(int)eVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" else (if_statement "if (dVar30 == 0xf) {\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }\n                        else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" if (parenthesized_expression "(dVar30 == 0xf)" ( (binary_expression "dVar30 == 0xf" identifier == number_literal) )) (compound_statement "{\n                          dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);\n                          *puVar17 = (int)dVar29;\n                        }" { (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,(uint *)0x0,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uint *)0x0" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "*puVar17 = (int)dVar29;" (assignment_expression "*puVar17 = (int)dVar29" (pointer_expression "*puVar17" * identifier) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) (else_clause "else if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" else (if_statement "if (dVar30 == 5) {\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" if (parenthesized_expression "(dVar30 == 5)" ( (binary_expression "dVar30 == 5" identifier == number_literal) )) (compound_statement "{\n                          if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;\n                          eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                          *puVar17 = (int)eVar32;\n                        }" { (if_statement "if ((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end) {\n                            iVar13 = 2;\n                          }\n                          else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;" if (parenthesized_expression "((DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end)" ( (binary_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U) < end" (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + 2U)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + 2U)" ( (binary_expression "(int)&pDVar22->li_length + 2U" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + number_literal) ))) < identifier) )) (compound_statement "{\n                            iVar13 = 2;\n                          }" { (expression_statement "iVar13 = 2;" (assignment_expression "iVar13 = 2" identifier = number_literal) ;) }) (else_clause "else if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;" else (if_statement "if ((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))\n                          goto LAB_0005ce4f;" if (parenthesized_expression "((end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U))" ( (binary_expression "(end <= pDVar22) ||\n                                  (iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)" (parenthesized_expression "(end <= pDVar22)" ( (binary_expression "end <= pDVar22" identifier <= identifier) )) || (parenthesized_expression "(iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U)" ( (comma_expression "iVar13 = (int)end - (int)pDVar22, 7 < iVar13 - 1U" (assignment_expression "iVar13 = (int)end - (int)pDVar22" identifier = (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar13 - 1U" number_literal < (binary_expression "iVar13 - 1U" identifier - number_literal))) ))) )) (goto_statement "goto LAB_0005ce4f;" goto statement_identifier ;)))) (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13)" identifier = (call_expression "(*byte_get)((uchar *)pDVar22,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,iVar13)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (expression_statement "*puVar17 = (int)eVar32;" (assignment_expression "*puVar17 = (int)eVar32" (pointer_expression "*puVar17" * identifier) = (cast_expression "(int)eVar32" ( (type_descriptor "int" primitive_type) ) identifier)) ;) })))))) })))) (labeled_statement "LAB_0005cb51:\n                      pDVar37 = (DWARF2_Internal_LineInfo *)0x9;" statement_identifier : (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)0x9;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)0x9" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x9" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)section;" (assignment_expression "pcVar9 = (char *)section" identifier = (cast_expression "(char *)section" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t');" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)\n                                read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "read_and_display_attr_value\n                                          (0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" identifier (argument_list "(0,(ulong)dVar30,0,(uchar *)pDVar22,(uchar *)end,0,0,\n                                           (ulonglong)linfo.li_offset_size,linfo._8_4_ & 0xffff,\n                                           (debug_info *)0x0,1,section,(cu_tu_set *)0x0,'\t')" ( number_literal , (cast_expression "(ulong)dVar30" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , number_literal , number_literal , (cast_expression "(ulonglong)linfo.li_offset_size" ( (type_descriptor "ulonglong" type_identifier) ) (field_expression "linfo.li_offset_size" identifier . field_identifier)) , (binary_expression "linfo._8_4_ & 0xffff" (field_expression "linfo._8_4_" identifier . field_identifier) & number_literal) , (cast_expression "(debug_info *)0x0" ( (type_descriptor "debug_info *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal , identifier , (cast_expression "(cu_tu_set *)0x0" ( (type_descriptor "cu_tu_set *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (char_literal "'\t'" ' escape_sequence ') ))))) ;) (expression_statement "local_8c = local_8c + 1;" (assignment_expression "local_8c = local_8c + 1" identifier = (binary_expression "local_8c + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_7c != local_8c)" ( (binary_expression "local_7c != local_8c" identifier != identifier) )) ;) })) (if_statement "if (end == pDVar22) {\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }" if (parenthesized_expression "(end == pDVar22)" ( (binary_expression "end == pDVar22" identifier == identifier) )) (compound_statement "{\nLAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";\n                    pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);\n                    warn(pcVar5);\n                    goto LAB_0005cd50;\n                  }" { (labeled_statement "LAB_0005cd30:\n                    pcVar9 = "Corrupt file name list\n";" statement_identifier : (expression_statement "pcVar9 = "Corrupt file name list\n";" (assignment_expression "pcVar9 = "Corrupt file name list\n"" identifier = (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ")) ;)) (expression_statement "pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"Corrupt file name list\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Corrupt file name list\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar5);" (call_expression "warn(pcVar5)" identifier (argument_list "(pcVar5)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;) })) (expression_statement "local_78 = local_78 + 1;" (assignment_expression "local_78 = local_78 + 1" identifier = (binary_expression "local_78 + 1" identifier + number_literal)) ;) (expression_statement "puVar17 = puVar17 + 4;" (assignment_expression "puVar17 = puVar17 + 4" identifier = (binary_expression "puVar17 + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 != local_94)" ( (binary_expression "local_78 != local_94" identifier != identifier) )) ;) (expression_statement "uVar6 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar6 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar6 != 0) goto LAB_0005cdc0;" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0005cdc0;" goto statement_identifier ;)) (labeled_statement "LAB_0005cd5b:\n                uVar21 = *(undefined4 *)local_b8;" statement_identifier : (expression_statement "uVar21 = *(undefined4 *)local_b8;" (assignment_expression "uVar21 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "pcVar9 = ".";" (assignment_expression "pcVar9 = "."" identifier = (string_literal ""."" " string_content ")) ;) (labeled_statement "LAB_0005cd63:\n                pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" statement_identifier : (expression_statement "pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"CU: %s/%s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s/%s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s/%s:\n",5)" identifier (argument_list "(0,"CU: %s/%s:\n",5)" ( number_literal , (string_literal ""CU: %s/%s:\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar5,pcVar9,uVar21);" (call_expression "printf(pcVar5,pcVar9,uVar21)" identifier (argument_list "(pcVar5,pcVar9,uVar21)" ( identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0005c27f;" goto statement_identifier ;) })) (expression_statement "pcVar9 = "Corrupt file name list\n";" (assignment_expression "pcVar9 = "Corrupt file name list\n"" identifier = (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ")) ;) }))) (labeled_statement "LAB_0005c678:\n            pcVar9 = (char *)dcgettext(0,pcVar9,5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9,5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9,5)" identifier (argument_list "(0,pcVar9,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);" (assignment_expression "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier = (call_expression "CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier (argument_list "(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" ( (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (goto_statement "goto LAB_0005adf9;" goto statement_identifier ;) })) (expression_statement "local_b4 = 0;" (assignment_expression "local_b4 = 0" identifier = number_literal) ;) (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 "pDVar15 = pDVar22;" (assignment_expression "pDVar15 = pDVar22" identifier = identifier) ;) (if_statement "if ((byte)pDVar22->li_length != 0) {\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }" if (parenthesized_expression "((byte)pDVar22->li_length != 0)" ( (binary_expression "(byte)pDVar22->li_length != 0" (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier)) != number_literal) )) (compound_statement "{\n            iVar13 = 0;\n            uVar6 = 0;\n            do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);\n            local_b4 = CONCAT44(iVar13,uVar6);\n            local_a4 = (undefined4 *)xmalloc(uVar6 * 4);\n            bVar12 = (byte)pDVar22->li_length;\n            puVar17 = local_a4;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }\n          }" { (expression_statement "iVar13 = 0;" (assignment_expression "iVar13 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = 0;" (assignment_expression "uVar6 = 0" identifier = number_literal) ;) (do_statement "do {\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)pDVar15->li_length != 0);" do (compound_statement "{\n              sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);\n              bVar23 = 0xfffffffe < uVar6;\n              uVar6 = uVar6 + 1;\n              pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);\n              iVar13 = iVar13 + (uint)bVar23;\n              if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            }" { (expression_statement "sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15);" (assignment_expression "sVar8 = strnlen((char *)pDVar15,(int)end - (int)pDVar15)" identifier = (call_expression "strnlen((char *)pDVar15,(int)end - (int)pDVar15)" identifier (argument_list "((char *)pDVar15,(int)end - (int)pDVar15)" ( (cast_expression "(char *)pDVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)end - (int)pDVar15" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar15" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar23 = 0xfffffffe < uVar6;" (assignment_expression "bVar23 = 0xfffffffe < uVar6" identifier = (binary_expression "0xfffffffe < uVar6" number_literal < identifier)) ;) (expression_statement "uVar6 = uVar6 + 1;" (assignment_expression "uVar6 = uVar6 + 1" identifier = (binary_expression "uVar6 + 1" identifier + number_literal)) ;) (expression_statement "pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1);" (assignment_expression "pDVar15 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + sVar8 + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar15->li_length + sVar8 + 1)" ( (binary_expression "(int)&pDVar15->li_length + sVar8 + 1" (binary_expression "(int)&pDVar15->li_length + sVar8" (cast_expression "(int)&pDVar15->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar15->li_length" & (field_expression "pDVar15->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "iVar13 = iVar13 + (uint)bVar23;" (assignment_expression "iVar13 = iVar13 + (uint)bVar23" identifier = (binary_expression "iVar13 + (uint)bVar23" identifier + (cast_expression "(uint)bVar23" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (end <= pDVar15) {\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }" if (parenthesized_expression "(end <= pDVar15)" ( (binary_expression "end <= pDVar15" identifier <= identifier) )) (compound_statement "{\n                pcVar9 = "directory table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }" { (expression_statement "pcVar9 = "directory table ends unexpectedly\n";" (assignment_expression "pcVar9 = "directory table ends unexpectedly\n"" identifier = (string_literal ""directory table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "((byte)pDVar15->li_length != 0)" ( (binary_expression "(byte)pDVar15->li_length != 0" (cast_expression "(byte)pDVar15->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar15->li_length" identifier -> field_identifier)) != number_literal) )) ;) (expression_statement "local_b4 = CONCAT44(iVar13,uVar6);" (assignment_expression "local_b4 = CONCAT44(iVar13,uVar6)" identifier = (call_expression "CONCAT44(iVar13,uVar6)" identifier (argument_list "(iVar13,uVar6)" ( identifier , identifier )))) ;) (expression_statement "local_a4 = (undefined4 *)xmalloc(uVar6 * 4);" (assignment_expression "local_a4 = (undefined4 *)xmalloc(uVar6 * 4)" identifier = (cast_expression "(undefined4 *)xmalloc(uVar6 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(uVar6 * 4)" identifier (argument_list "(uVar6 * 4)" ( (binary_expression "uVar6 * 4" identifier * number_literal) ))))) ;) (expression_statement "bVar12 = (byte)pDVar22->li_length;" (assignment_expression "bVar12 = (byte)pDVar22->li_length" identifier = (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier))) ;) (expression_statement "puVar17 = local_a4;" (assignment_expression "puVar17 = local_a4" identifier = identifier) ;) (while_statement "while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }" while (parenthesized_expression "(bVar12 != 0)" ( (binary_expression "bVar12 != 0" identifier != number_literal) )) (compound_statement "{\n              *puVar17 = pDVar22;\n              puVar17 = puVar17 + 1;\n              sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);\n              bVar12 = (byte)pDVar22->li_length;\n            }" { (expression_statement "*puVar17 = pDVar22;" (assignment_expression "*puVar17 = pDVar22" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17 = puVar17 + 1;" (assignment_expression "puVar17 = puVar17 + 1" identifier = (binary_expression "puVar17 + 1" identifier + number_literal)) ;) (expression_statement "sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end);" (assignment_expression "sVar8 = strnlen((char *)pDVar22,(int)pDVar22 - (int)end)" identifier = (call_expression "strnlen((char *)pDVar22,(int)pDVar22 - (int)end)" identifier (argument_list "((char *)pDVar22,(int)pDVar22 - (int)end)" ( (cast_expression "(char *)pDVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pDVar22 - (int)end" (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + sVar8 + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + sVar8 + 1)" ( (binary_expression "(int)&pDVar22->li_length + sVar8 + 1" (binary_expression "(int)&pDVar22->li_length + sVar8" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "bVar12 = (byte)pDVar22->li_length;" (assignment_expression "bVar12 = (byte)pDVar22->li_length" identifier = (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier))) ;) })) })) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar15->li_length + 1)" ( (binary_expression "(int)&pDVar15->li_length + 1" (cast_expression "(int)&pDVar15->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar15->li_length" & (field_expression "pDVar15->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if ((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)) {\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }\n          else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }" if (parenthesized_expression "((pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0))" ( (binary_expression "(pDVar22 < end) && (*(byte *)((int)&pDVar15->li_length + 1) != 0)" (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) && (parenthesized_expression "(*(byte *)((int)&pDVar15->li_length + 1) != 0)" ( (binary_expression "*(byte *)((int)&pDVar15->li_length + 1) != 0" (pointer_expression "*(byte *)((int)&pDVar15->li_length + 1)" * (cast_expression "(byte *)((int)&pDVar15->li_length + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar15->li_length + 1)" ( (binary_expression "(int)&pDVar15->li_length + 1" (cast_expression "(int)&pDVar15->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar15->li_length" & (field_expression "pDVar15->li_length" identifier -> field_identifier))) + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n            local_94 = (uchar *)0x0;\n            __string = pDVar22;\n            do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);\n            local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);\n            bVar12 = *(byte *)((int)&pDVar15->li_length + 1);\n            puVar17 = (undefined4 *)local_b8;\n            while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);\n            if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }\n          }" { (expression_statement "local_94 = (uchar *)0x0;" (assignment_expression "local_94 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "__string = pDVar22;" (assignment_expression "__string = pDVar22" identifier = identifier) ;) (do_statement "do {\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            } while ((byte)__string->li_length != 0);" do (compound_statement "{\n              sVar8 = strnlen((char *)__string,(int)end - (int)__string);\n              pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              __string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              local_94 = local_94 + 1;\n              if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }\n            }" { (expression_statement "sVar8 = strnlen((char *)__string,(int)end - (int)__string);" (assignment_expression "sVar8 = strnlen((char *)__string,(int)end - (int)__string)" identifier = (call_expression "strnlen((char *)__string,(int)end - (int)__string)" identifier (argument_list "((char *)__string,(int)end - (int)__string)" ( (cast_expression "(char *)__string" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)end - (int)__string" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)__string" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1);" (assignment_expression "pbVar16 = (byte *)((int)&__string->li_length + sVar8 + 1)" identifier = (cast_expression "(byte *)((int)&__string->li_length + sVar8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&__string->li_length + sVar8 + 1)" ( (binary_expression "(int)&__string->li_length + sVar8 + 1" (binary_expression "(int)&__string->li_length + sVar8" (cast_expression "(int)&__string->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&__string->li_length" & (field_expression "__string->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "pcVar9 = (char *)&bytes_read;" (assignment_expression "pcVar9 = (char *)&bytes_read" identifier = (cast_expression "(char *)&bytes_read" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&bytes_read" & identifier))) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "__string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "__string = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (if_statement "if (end <= __string) {\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }" if (parenthesized_expression "(end <= __string)" ( (binary_expression "end <= __string" identifier <= identifier) )) (compound_statement "{\n                pcVar9 = "file table ends unexpectedly\n";\n                goto LAB_0005c678;\n              }" { (expression_statement "pcVar9 = "file table ends unexpectedly\n";" (assignment_expression "pcVar9 = "file table ends unexpectedly\n"" identifier = (string_literal ""file table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "((byte)__string->li_length != 0)" ( (binary_expression "(byte)__string->li_length != 0" (cast_expression "(byte)__string->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "__string->li_length" identifier -> field_identifier)) != number_literal) )) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10);" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)xmalloc((int)local_94 * 0x10)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((int)local_94 * 0x10)" identifier (argument_list "((int)local_94 * 0x10)" ( (binary_expression "(int)local_94 * 0x10" (cast_expression "(int)local_94" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))))) ;) (expression_statement "bVar12 = *(byte *)((int)&pDVar15->li_length + 1);" (assignment_expression "bVar12 = *(byte *)((int)&pDVar15->li_length + 1)" identifier = (pointer_expression "*(byte *)((int)&pDVar15->li_length + 1)" * (cast_expression "(byte *)((int)&pDVar15->li_length + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar15->li_length + 1)" ( (binary_expression "(int)&pDVar15->li_length + 1" (cast_expression "(int)&pDVar15->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar15->li_length" & (field_expression "pDVar15->li_length" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "puVar17 = (undefined4 *)local_b8;" (assignment_expression "puVar17 = (undefined4 *)local_b8" identifier = (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (while_statement "while (bVar12 != 0) {\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }" while (parenthesized_expression "(bVar12 != 0)" ( (binary_expression "bVar12 != 0" identifier != number_literal) )) (compound_statement "{\n              *puVar17 = pDVar22;\n              sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);\n              pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[1] = (int)dVar29;\n              dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);\n              pbVar16 = pbVar16 + bytes_read;\n              puVar17[2] = (int)dVar29;\n              pcVar9 = (char *)&bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);\n              puVar17[3] = (int)dVar29;\n              puVar17 = puVar17 + 4;\n              bVar12 = (byte)pDVar22->li_length;\n            }" { (expression_statement "*puVar17 = pDVar22;" (assignment_expression "*puVar17 = pDVar22" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22);" (assignment_expression "sVar8 = strnlen((char *)pDVar22,(int)end - (int)pDVar22)" identifier = (call_expression "strnlen((char *)pDVar22,(int)end - (int)pDVar22)" identifier (argument_list "((char *)pDVar22,(int)end - (int)pDVar22)" ( (cast_expression "(char *)pDVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1);" (assignment_expression "pbVar16 = (byte *)((int)&pDVar22->li_length + sVar8 + 1)" identifier = (cast_expression "(byte *)((int)&pDVar22->li_length + sVar8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + sVar8 + 1)" ( (binary_expression "(int)&pDVar22->li_length + sVar8 + 1" (binary_expression "(int)&pDVar22->li_length + sVar8" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) + number_literal) )))) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "puVar17[1] = (int)dVar29;" (assignment_expression "puVar17[1] = (int)dVar29" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,&bytes_read,0,(uchar *)end)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "puVar17[2] = (int)dVar29;" (assignment_expression "puVar17[2] = (int)dVar29" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "pcVar9 = (char *)&bytes_read;" (assignment_expression "pcVar9 = (char *)&bytes_read" identifier = (cast_expression "(char *)&bytes_read" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&bytes_read" & identifier))) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128(pbVar16,(uint *)&bytes_read,0,(uchar *)end)" identifier (argument_list "(pbVar16,(uint *)&bytes_read,0,(uchar *)end)" ( identifier , (cast_expression "(uint *)&bytes_read" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&bytes_read" & identifier)) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + bytes_read)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) )))) ;) (expression_statement "puVar17[3] = (int)dVar29;" (assignment_expression "puVar17[3] = (int)dVar29" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "puVar17 = puVar17 + 4;" (assignment_expression "puVar17 = puVar17 + 4" identifier = (binary_expression "puVar17 + 4" identifier + number_literal)) ;) (expression_statement "bVar12 = (byte)pDVar22->li_length;" (assignment_expression "bVar12 = (byte)pDVar22->li_length" identifier = (cast_expression "(byte)pDVar22->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "pDVar22->li_length" identifier -> field_identifier))) ;) })) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&__string->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&__string->li_length + 1)" ( (binary_expression "(int)&__string->li_length + 1" (cast_expression "(int)&__string->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&__string->li_length" & (field_expression "__string->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (local_a4 == (undefined4 *)0x0) {\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }\n            else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }" if (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              uVar21 = *(undefined4 *)local_b8;\n              pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);\n              printf(pcVar9,uVar21);\n            }" { (expression_statement "uVar21 = *(undefined4 *)local_b8;" (assignment_expression "uVar21 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"CU: %s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s:\n",5)" identifier (argument_list "(0,"CU: %s:\n",5)" ( number_literal , (string_literal ""CU: %s:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar21);" (call_expression "printf(pcVar9,uVar21)" identifier (argument_list "(pcVar9,uVar21)" ( identifier , identifier ))) ;) }) (else_clause "else {\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }" else (compound_statement "{\nLAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);\n              if (uVar6 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }\n              uVar21 = *(undefined4 *)local_b8;\n              if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;\n              printf("%s:\n",uVar21);\n            }" { (labeled_statement "LAB_0005cd50:\n              uVar6 = *(uint *)((int)local_b8 + 4);" statement_identifier : (expression_statement "uVar6 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar6 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;)) (if_statement "if (uVar6 == 0) goto LAB_0005cd5b;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005cd5b;" goto statement_identifier ;)) (labeled_statement "LAB_0005cdc0:\n              if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }" statement_identifier : (if_statement "if (local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0) {\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }\n              else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }" if (parenthesized_expression "(local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0)" ( (binary_expression "local_b4._4_4_ == 0 && (uchar *)local_b4 == (uchar *)0x0" (binary_expression "local_b4._4_4_ == 0" (field_expression "local_b4._4_4_" identifier . field_identifier) == number_literal) && (binary_expression "(uchar *)local_b4 == (uchar *)0x0" (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n                pcVar9 = "<unknown>";\nLAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);\n              }" { (expression_statement "pcVar9 = "<unknown>";" (assignment_expression "pcVar9 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005d3fb:\n                pcVar9 = (char *)dcgettext(0,pcVar9,5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9,5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9,5)" identifier (argument_list "(0,pcVar9,5)" ( number_literal , identifier , number_literal ))))) ;)) }) (else_clause "else {\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }" else (compound_statement "{\n                if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }\n                pcVar9 = (char *)local_a4[uVar6 - 1];\n              }" { (if_statement "if (local_b4._4_4_ < ((uchar *)local_b4 < uVar6)) {\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }" if (parenthesized_expression "(local_b4._4_4_ < ((uchar *)local_b4 < uVar6))" ( (binary_expression "local_b4._4_4_ < ((uchar *)local_b4 < uVar6)" (field_expression "local_b4._4_4_" identifier . field_identifier) < (parenthesized_expression "((uchar *)local_b4 < uVar6)" ( (binary_expression "(uchar *)local_b4 < uVar6" (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) < identifier) ))) )) (compound_statement "{\n                  pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);\n                  pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);\n                  warn(pcVar5,uVar6,pcVar9);\n                  pcVar9 = "<corrupt>";\n                  goto LAB_0005d3fb;\n                }" { (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4)" identifier (argument_list "("u",ZEXT48(pcVar9) << 0x20,(uint)(uchar *)local_b4)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(pcVar9) << 0x20" (call_expression "ZEXT48(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) << number_literal) , (cast_expression "(uint)(uchar *)local_b4" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"directory index %u > number of directories %s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n",5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar5,uVar6,pcVar9);" (call_expression "warn(pcVar5,uVar6,pcVar9)" identifier (argument_list "(pcVar5,uVar6,pcVar9)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar9 = "<corrupt>";" (assignment_expression "pcVar9 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005d3fb;" goto statement_identifier ;) })) (expression_statement "pcVar9 = (char *)local_a4[uVar6 - 1];" (assignment_expression "pcVar9 = (char *)local_a4[uVar6 - 1]" identifier = (cast_expression "(char *)local_a4[uVar6 - 1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a4[uVar6 - 1]" identifier [ (binary_expression "uVar6 - 1" identifier - number_literal) ]))) ;) })))) (expression_statement "uVar21 = *(undefined4 *)local_b8;" (assignment_expression "uVar21 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)) goto LAB_0005cd63;" if (parenthesized_expression "((do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c))" ( (binary_expression "(do_wide != 0) || (sVar8 = strlen(pcVar9), sVar8 < 0x4c)" (parenthesized_expression "(do_wide != 0)" ( (binary_expression "do_wide != 0" identifier != number_literal) )) || (parenthesized_expression "(sVar8 = strlen(pcVar9), sVar8 < 0x4c)" ( (comma_expression "sVar8 = strlen(pcVar9), sVar8 < 0x4c" (assignment_expression "sVar8 = strlen(pcVar9)" identifier = (call_expression "strlen(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) , (binary_expression "sVar8 < 0x4c" identifier < number_literal)) ))) )) (goto_statement "goto LAB_0005cd63;" goto statement_identifier ;)) (expression_statement "printf("%s:\n",uVar21);" (call_expression "printf("%s:\n",uVar21)" identifier (argument_list "("%s:\n",uVar21)" ( (string_literal ""%s:\n"" " string_content escape_sequence ") , identifier ))) ;) }))) }) (else_clause "else {\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }" else (compound_statement "{\n            local_94 = (uchar *)0x0;\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);\n            local_b8 = (DWARF2_Internal_LineInfo *)0x0;\n          }" { (expression_statement "local_94 = (uchar *)0x0;" (assignment_expression "local_94 = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar15->li_length + 2)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar15->li_length + 2)" ( (binary_expression "(int)&pDVar15->li_length + 2" (cast_expression "(int)&pDVar15->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar15->li_length" & (field_expression "pDVar15->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)0x0;" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)0x0" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_0005c27f:\n          in_stack_ffffff2c = (uchar *)0x5;" statement_identifier : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    );" (assignment_expression "pcVar9 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    )" identifier = (cast_expression "(char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    )" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    )" identifier (argument_list "(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                    )" ( number_literal , (string_literal ""File name                            Line number    Starting address    View\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "saved_linfo_11206 = (undefined4)linfo.li_length;" (assignment_expression "saved_linfo_11206 = (undefined4)linfo.li_length" identifier = (cast_expression "(undefined4)linfo.li_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_length" identifier . field_identifier))) ;) (expression_statement "DAT_000b75e4 = linfo.li_length._4_4_;" (assignment_expression "DAT_000b75e4 = linfo.li_length._4_4_" identifier = (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier)) ;) (expression_statement "DAT_000b75e8._0_2_ = linfo.li_version;" (assignment_expression "DAT_000b75e8._0_2_ = linfo.li_version" (field_expression "DAT_000b75e8._0_2_" identifier . field_identifier) = (field_expression "linfo.li_version" identifier . field_identifier)) ;) (expression_statement "DAT_000b75e8._2_2_ = linfo._10_2_;" (assignment_expression "DAT_000b75e8._2_2_ = linfo._10_2_" (field_expression "DAT_000b75e8._2_2_" identifier . field_identifier) = (field_expression "linfo._10_2_" identifier . field_identifier)) ;) (expression_statement "DAT_000b75ec = (undefined4)linfo.li_prologue_length;" (assignment_expression "DAT_000b75ec = (undefined4)linfo.li_prologue_length" identifier = (cast_expression "(undefined4)linfo.li_prologue_length" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "linfo.li_prologue_length" identifier . field_identifier))) ;) (expression_statement "DAT_000b75f0 = linfo.li_prologue_length._4_4_;" (assignment_expression "DAT_000b75f0 = linfo.li_prologue_length._4_4_" identifier = (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier)) ;) (expression_statement "DAT_000b75f4._0_1_ = linfo.li_min_insn_length;" (assignment_expression "DAT_000b75f4._0_1_ = linfo.li_min_insn_length" (field_expression "DAT_000b75f4._0_1_" identifier . field_identifier) = (field_expression "linfo.li_min_insn_length" identifier . field_identifier)) ;) (expression_statement "DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn;" (assignment_expression "DAT_000b75f4._1_1_ = linfo.li_max_ops_per_insn" (field_expression "DAT_000b75f4._1_1_" identifier . field_identifier) = (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier)) ;) (expression_statement "DAT_000b75f4._2_1_ = linfo.li_default_is_stmt;" (assignment_expression "DAT_000b75f4._2_1_ = linfo.li_default_is_stmt" (field_expression "DAT_000b75f4._2_1_" identifier . field_identifier) = (field_expression "linfo.li_default_is_stmt" identifier . field_identifier)) ;) (expression_statement "DAT_000b75f4._3_1_ = linfo._23_1_;" (assignment_expression "DAT_000b75f4._3_1_ = linfo._23_1_" (field_expression "DAT_000b75f4._3_1_" identifier . field_identifier) = (field_expression "linfo._23_1_" identifier . field_identifier)) ;) (expression_statement "DAT_000b75f8 = linfo.li_line_base;" (assignment_expression "DAT_000b75f8 = linfo.li_line_base" identifier = (field_expression "linfo.li_line_base" identifier . field_identifier)) ;) (expression_statement "DAT_000b75fc._0_1_ = linfo.li_line_range;" (assignment_expression "DAT_000b75fc._0_1_ = linfo.li_line_range" (field_expression "DAT_000b75fc._0_1_" identifier . field_identifier) = (field_expression "linfo.li_line_range" identifier . field_identifier)) ;) (expression_statement "DAT_000b75fc._1_1_ = linfo.li_opcode_base;" (assignment_expression "DAT_000b75fc._1_1_ = linfo.li_opcode_base" (field_expression "DAT_000b75fc._1_1_" identifier . field_identifier) = (field_expression "linfo.li_opcode_base" identifier . field_identifier)) ;) (expression_statement "DAT_000b75fc._2_2_ = linfo._30_2_;" (assignment_expression "DAT_000b75fc._2_2_ = linfo._30_2_" (field_expression "DAT_000b75fc._2_2_" identifier . field_identifier) = (field_expression "linfo._30_2_" identifier . field_identifier)) ;) (expression_statement "DAT_000b7600 = linfo.li_offset_size;" (assignment_expression "DAT_000b7600 = linfo.li_offset_size" identifier = (field_expression "linfo.li_offset_size" identifier . field_identifier)) ;) (if_statement "if (pDVar22 < end_of_sequence) {\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" if (parenthesized_expression "(pDVar22 < end_of_sequence)" ( (binary_expression "pDVar22 < end_of_sequence" identifier < identifier) )) (compound_statement "{\nLAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;\n            dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);\n            local_bc = pDVar22;\n            linfo.li_length._0_4_ = saved_linfo_11206;\n            linfo.li_length._4_4_ = DAT_000b75e4;\n            linfo._8_4_ = DAT_000b75e8;\n            linfo.li_prologue_length._0_4_ = DAT_000b75ec;\n            linfo.li_prologue_length._4_4_ = DAT_000b75f0;\n            linfo._20_4_ = DAT_000b75f4;\n            linfo.li_line_base = DAT_000b75f8;\n            linfo._28_4_ = DAT_000b75fc;\n            linfo.li_offset_size = DAT_000b7600;\nLAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);\n            bVar12 = (byte)local_bc->li_length;\n            uVar6 = (uint)bVar12;\n            if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }\n            state_machine_regs.address = dVar29;\n            switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }\n            if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" { (labeled_statement "LAB_0005ab5e:\n            local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;" statement_identifier : (expression_statement "local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;" (assignment_expression "local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address);" (assignment_expression "dVar29 = CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier = (call_expression "CONCAT44(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" identifier (argument_list "(state_machine_regs.address._4_4_,\n                              (undefined4)state_machine_regs.address)" ( (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (expression_statement "linfo.li_length._0_4_ = saved_linfo_11206;" (assignment_expression "linfo.li_length._0_4_ = saved_linfo_11206" (field_expression "linfo.li_length._0_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._4_4_ = DAT_000b75e4;" (assignment_expression "linfo.li_length._4_4_ = DAT_000b75e4" (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._8_4_ = DAT_000b75e8;" (assignment_expression "linfo._8_4_ = DAT_000b75e8" (field_expression "linfo._8_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._0_4_ = DAT_000b75ec;" (assignment_expression "linfo.li_prologue_length._0_4_ = DAT_000b75ec" (field_expression "linfo.li_prologue_length._0_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._4_4_ = DAT_000b75f0;" (assignment_expression "linfo.li_prologue_length._4_4_ = DAT_000b75f0" (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._20_4_ = DAT_000b75f4;" (assignment_expression "linfo._20_4_ = DAT_000b75f4" (field_expression "linfo._20_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_base = DAT_000b75f8;" (assignment_expression "linfo.li_line_base = DAT_000b75f8" (field_expression "linfo.li_line_base" identifier . field_identifier) = identifier) ;) (expression_statement "linfo._28_4_ = DAT_000b75fc;" (assignment_expression "linfo._28_4_ = DAT_000b75fc" (field_expression "linfo._28_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_offset_size = DAT_000b7600;" (assignment_expression "linfo.li_offset_size = DAT_000b7600" (field_expression "linfo.li_offset_size" identifier . field_identifier) = identifier) ;) (labeled_statement "LAB_0005ad11:\n            pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);" statement_identifier : (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_bc->li_length + 1)" ( (binary_expression "(int)&local_bc->li_length + 1" (cast_expression "(int)&local_bc->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_bc->li_length" & (field_expression "local_bc->li_length" identifier -> field_identifier))) + number_literal) )))) ;)) (expression_statement "bVar12 = (byte)local_bc->li_length;" (assignment_expression "bVar12 = (byte)local_bc->li_length" identifier = (cast_expression "(byte)local_bc->li_length" ( (type_descriptor "byte" type_identifier) ) (field_expression "local_bc->li_length" identifier -> field_identifier))) ;) (expression_statement "uVar6 = (uint)bVar12;" (assignment_expression "uVar6 = (uint)bVar12" identifier = (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (linfo.li_opcode_base <= bVar12) {\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }" if (parenthesized_expression "(linfo.li_opcode_base <= bVar12)" ( (binary_expression "linfo.li_opcode_base <= bVar12" (field_expression "linfo.li_opcode_base" identifier . field_identifier) <= identifier) )) (compound_statement "{\n              uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;\n              bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);\n              uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }\n              uVar20 = uVar20 * (linfo._20_4_ & 0xff);\n              state_machine_regs.address = dVar29 + uVar20;\n              if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }\n              state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;\n              local_bc = pDVar22;\n              goto joined_r0x0005af93;\n            }" { (expression_statement "uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff;" (assignment_expression "uVar4 = (ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff" identifier = (binary_expression "(ushort)bVar12 - (ushort)linfo.li_opcode_base & 0xff" (binary_expression "(ushort)bVar12 - (ushort)linfo.li_opcode_base" (cast_expression "(ushort)bVar12" ( (type_descriptor "ushort" type_identifier) ) identifier) - (cast_expression "(ushort)linfo.li_opcode_base" ( (type_descriptor "ushort" type_identifier) ) (field_expression "linfo.li_opcode_base" identifier . field_identifier))) & number_literal)) ;) (expression_statement "bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range);" (assignment_expression "bVar12 = (byte)(uVar4 % (ushort)linfo.li_line_range)" identifier = (call_expression "(byte)(uVar4 % (ushort)linfo.li_line_range)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 % (ushort)linfo.li_line_range)" ( (binary_expression "uVar4 % (ushort)linfo.li_line_range" identifier % (cast_expression "(ushort)linfo.li_line_range" ( (type_descriptor "ushort" type_identifier) ) (field_expression "linfo.li_line_range" identifier . field_identifier))) )))) ;) (expression_statement "uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff;" (assignment_expression "uVar20 = CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff" identifier = (binary_expression "CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range)) & 0xff" (call_expression "CONCAT11(bVar12,(char)(uVar4 / linfo.li_line_range))" identifier (argument_list "(bVar12,(char)(uVar4 / linfo.li_line_range))" ( identifier , (cast_expression "(char)(uVar4 / linfo.li_line_range)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(uVar4 / linfo.li_line_range)" ( (binary_expression "uVar4 / linfo.li_line_range" identifier / (field_expression "linfo.li_line_range" identifier . field_identifier)) ))) ))) & number_literal)) ;) (if_statement "if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }" if (parenthesized_expression "(linfo.li_max_ops_per_insn != '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn != '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                uVar7 = state_machine_regs.op_index + uVar20;\n                uVar20 = uVar7 / linfo.li_max_ops_per_insn;\n                local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);\n                state_machine_regs.op_index = local_88;\n              }" { (expression_statement "uVar7 = state_machine_regs.op_index + uVar20;" (assignment_expression "uVar7 = state_machine_regs.op_index + uVar20" identifier = (binary_expression "state_machine_regs.op_index + uVar20" (field_expression "state_machine_regs.op_index" identifier . field_identifier) + identifier)) ;) (expression_statement "uVar20 = uVar7 / linfo.li_max_ops_per_insn;" (assignment_expression "uVar20 = uVar7 / linfo.li_max_ops_per_insn" identifier = (binary_expression "uVar7 / linfo.li_max_ops_per_insn" identifier / (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier))) ;) (expression_statement "local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn);" (assignment_expression "local_88 = (uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn)" identifier = (call_expression "(uchar)(uVar7 % (uint)linfo.li_max_ops_per_insn)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "(uVar7 % (uint)linfo.li_max_ops_per_insn)" ( (binary_expression "uVar7 % (uint)linfo.li_max_ops_per_insn" identifier % (cast_expression "(uint)linfo.li_max_ops_per_insn" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier))) )))) ;) (expression_statement "state_machine_regs.op_index = local_88;" (assignment_expression "state_machine_regs.op_index = local_88" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = identifier) ;) })) (expression_statement "uVar20 = uVar20 * (linfo._20_4_ & 0xff);" (assignment_expression "uVar20 = uVar20 * (linfo._20_4_ & 0xff)" identifier = (binary_expression "uVar20 * (linfo._20_4_ & 0xff)" identifier * (parenthesized_expression "(linfo._20_4_ & 0xff)" ( (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal) )))) ;) (expression_statement "state_machine_regs.address = dVar29 + uVar20;" (assignment_expression "state_machine_regs.address = dVar29 + uVar20" (field_expression "state_machine_regs.address" identifier . field_identifier) = (binary_expression "dVar29 + uVar20" identifier + identifier)) ;) (if_statement "if (uVar20 != 0) {\n                state_machine_regs.view = 0;\n              }" if (parenthesized_expression "(uVar20 != 0)" ( (binary_expression "uVar20 != 0" identifier != number_literal) )) (compound_statement "{\n                state_machine_regs.view = 0;\n              }" { (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) })) (expression_statement "state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base;" (assignment_expression "state_machine_regs.line = state_machine_regs.line + (uint)bVar12 + linfo.li_line_base" (field_expression "state_machine_regs.line" identifier . field_identifier) = (binary_expression "state_machine_regs.line + (uint)bVar12 + linfo.li_line_base" (binary_expression "state_machine_regs.line + (uint)bVar12" (field_expression "state_machine_regs.line" identifier . field_identifier) + (cast_expression "(uint)bVar12" ( (type_descriptor "uint" type_identifier) ) identifier)) + (field_expression "linfo.li_line_base" identifier . field_identifier))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;) })) (expression_statement "state_machine_regs.address = dVar29;" (assignment_expression "state_machine_regs.address = dVar29" (field_expression "state_machine_regs.address" identifier . field_identifier) = identifier) ;) (switch_statement "switch(uVar6) {\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }" switch (parenthesized_expression "(uVar6)" ( identifier )) (compound_statement "{\n            case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;\n            case 1:\n            case 10:\n            case 0xb:\n              goto _L2741;\n            case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;\n            case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;\n            case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;\n            case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;\n            case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;\n            case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;\n            case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;\n            default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }\n            }" { (case_statement "case 0:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);\n              puVar11 = (uchar *)dVar29;\n              if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }\n              pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);\n              local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);\n              pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);\n              uVar6 = (uint)*pbVar16;\n              switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }\n              break;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x0;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)end_of_sequence" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence)" identifier = (call_expression "read_leb128((uchar *)pDVar22,&bytes_read,0,end_of_sequence)" identifier (argument_list "((uchar *)pDVar22,&bytes_read,0,end_of_sequence)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar11 = (uchar *)dVar29;" (assignment_expression "puVar11 = (uchar *)dVar29" identifier = (cast_expression "(uchar *)dVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (puVar11 == (uchar *)0x0) {\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }" if (parenthesized_expression "(puVar11 == (uchar *)0x0)" ( (binary_expression "puVar11 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                in_stack_ffffff2c = (uchar *)0x5;\n                pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");\n                warn(pcVar9);\n                local_bc = pDVar22;\n                dVar29 = state_machine_regs.address;\n                break;\n              }" { (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"Badly formed extended line op encountered!\n")" identifier = (cast_expression "(char *)dcgettext(0,"Badly formed extended line op encountered!\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Badly formed extended line op encountered!\n")" identifier (argument_list "(0,"Badly formed extended line op encountered!\n")" ( number_literal , (string_literal ""Badly formed extended line op encountered!\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "warn(pcVar9);" (call_expression "warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (break_statement "break;" break ;) })) (expression_statement "pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "pbVar16 = (byte *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(byte *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)\n                         (puVar11 + bytes_read + (int)&pDVar22->li_length)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + bytes_read + (int)&pDVar22->li_length)" ( (binary_expression "puVar11 + bytes_read + (int)&pDVar22->li_length" (binary_expression "puVar11 + bytes_read" identifier + identifier) + (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier)))) )))) ;) (expression_statement "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1);" (assignment_expression "pDVar22 = (DWARF2_Internal_LineInfo *)(pbVar16 + 1)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + 1)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + 1)" ( (binary_expression "pbVar16 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar6 = (uint)*pbVar16;" (assignment_expression "uVar6 = (uint)*pbVar16" identifier = (binary_expression "(uint)*pbVar16" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (switch_statement "switch(uVar6) {\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }" switch (parenthesized_expression "(uVar6)" ( identifier )) (compound_statement "{\n              default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;\n              case 1:\n              case 4:\n              case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;\n              }" { (case_statement "default:\n                pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar9,uVar6);\n                in_stack_ffffff2c = puVar11;" default : (expression_statement "pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier (argument_list "(0,"UNKNOWN (%u): length %d\n",5)" ( number_literal , (string_literal ""UNKNOWN (%u): length %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (expression_statement "in_stack_ffffff2c = puVar11;" (assignment_expression "in_stack_ffffff2c = puVar11" identifier = identifier) ;)) (case_statement "case 1:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0x16:\n                dVar29 = state_machine_regs.address;\n                if (uVar6 != 1) break;\n                uVar6 = 0xffffffff;\n                goto joined_r0x0005af93;" case number_literal : (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if (uVar6 != 1) break;" if (parenthesized_expression "(uVar6 != 1)" ( (binary_expression "uVar6 != 1" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "uVar6 = 0xffffffff;" (assignment_expression "uVar6 = 0xffffffff" identifier = number_literal) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;)) (case_statement "case 2:\n                puVar11 = puVar11 + -1;\n                if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }\n                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n                state_machine_regs.view = 0;\n                break;" case number_literal : (expression_statement "puVar11 = puVar11 + -1;" (assignment_expression "puVar11 = puVar11 + -1" identifier = (binary_expression "puVar11 + -1" identifier + number_literal)) ;) (if_statement "if (puVar11 < (uchar *)0x9) {\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }\n                else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }" if (parenthesized_expression "(puVar11 < (uchar *)0x9)" ( (binary_expression "puVar11 < (uchar *)0x9" identifier < (cast_expression "(uchar *)0x9" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }\n                  dVar29 = 0;\n                }" { (if_statement "if (local_bc < end) {\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }\n                  else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }" if (parenthesized_expression "(local_bc < end)" ( (binary_expression "local_bc < end" identifier < identifier) )) (compound_statement "{\nLAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;\n                  }" { (labeled_statement "LAB_0005b20c:\n                    if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;" statement_identifier : (if_statement "if (puVar11 + -1 < (uchar *)0x8) goto LAB_0005b218;" if (parenthesized_expression "(puVar11 + -1 < (uchar *)0x8)" ( (binary_expression "puVar11 + -1 < (uchar *)0x8" (binary_expression "puVar11 + -1" identifier + number_literal) < (cast_expression "(uchar *)0x8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0005b218;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }" else (compound_statement "{\nLAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }\n                  }" { (labeled_statement "LAB_0005b1f6:\n                    if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }" statement_identifier : (if_statement "if (pDVar22 < end) {\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }" if (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) (compound_statement "{\n                      puVar11 = (uchar *)((int)end - (int)pDVar22);\n                      goto LAB_0005b20c;\n                    }" { (expression_statement "puVar11 = (uchar *)((int)end - (int)pDVar22);" (assignment_expression "puVar11 = (uchar *)((int)end - (int)pDVar22)" identifier = (cast_expression "(uchar *)((int)end - (int)pDVar22)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)end - (int)pDVar22)" ( (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (goto_statement "goto LAB_0005b20c;" goto statement_identifier ;) }))) }))) (expression_statement "dVar29 = 0;" (assignment_expression "dVar29 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }" else (compound_statement "{\n                  pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);\n                  in_stack_ffffff2c = (uchar *)0x8;\n                  error(pcVar9,puVar11);\n                  if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;\n                  puVar11 = (uchar *)0x8;\nLAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);\n                }" { (expression_statement "pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5);" (assignment_expression "pcVar9 = (char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5)" identifier = (cast_expression "(char *)dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5)" identifier (argument_list "(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,puVar11,5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , identifier , number_literal ))))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x8;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x8" identifier = (cast_expression "(uchar *)0x8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "error(pcVar9,puVar11);" (call_expression "error(pcVar9,puVar11)" identifier (argument_list "(pcVar9,puVar11)" ( identifier , identifier ))) ;) (if_statement "if (end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)) goto LAB_0005b1f6;" if (parenthesized_expression "(end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9))" ( (binary_expression "end <= (DWARF2_Internal_LineInfo *)(pbVar16 + 9)" identifier <= (cast_expression "(DWARF2_Internal_LineInfo *)(pbVar16 + 9)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar16 + 9)" ( (binary_expression "pbVar16 + 9" identifier + number_literal) )))) )) (goto_statement "goto LAB_0005b1f6;" goto statement_identifier ;)) (expression_statement "puVar11 = (uchar *)0x8;" (assignment_expression "puVar11 = (uchar *)0x8" identifier = (cast_expression "(uchar *)0x8" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_0005b218:\n                  dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);" statement_identifier : (expression_statement "dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11);" (assignment_expression "dVar29 = (*byte_get)((uchar *)pDVar22,(int)puVar11)" identifier = (call_expression "(*byte_get)((uchar *)pDVar22,(int)puVar11)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,(int)puVar11)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) )))) ;)) }))) (expression_statement "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;" (assignment_expression "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) = (binary_expression "state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) & number_literal)) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);\n                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);\n                *puVar17 = pDVar22;\n                sVar8 = strlen((char *)pDVar22);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[1] = (int)dVar29;\n                pbVar16 = pbVar16 + bytes_read;\n                dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);\n                puVar17[2] = (int)dVar29;\n                in_stack_ffffff2c = (uchar *)0x0;\n                pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;\n                dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);\n                puVar17[3] = (int)dVar29;\n                dVar29 = state_machine_regs.address;" case number_literal : (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (expression_statement "local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10);" (assignment_expression "local_b8 = (DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)xrealloc(local_b8,(int)local_94 * 0x10)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xrealloc(local_b8,(int)local_94 * 0x10)" identifier (argument_list "(local_b8,(int)local_94 * 0x10)" ( identifier , (binary_expression "(int)local_94 * 0x10" (cast_expression "(int)local_94" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))))) ;) (expression_statement "state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;" (assignment_expression "state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = (binary_expression "state_machine_regs.last_file_entry + 1" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) + number_literal)) ;) (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + ((int)local_94 * 4 + -4) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + ((int)local_94 * 4 + -4) * 4)" ( (binary_expression "(int)local_b8 + ((int)local_94 * 4 + -4) * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "((int)local_94 * 4 + -4) * 4" (parenthesized_expression "((int)local_94 * 4 + -4)" ( (binary_expression "(int)local_94 * 4 + -4" (binary_expression "(int)local_94 * 4" (cast_expression "(int)local_94" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar17 = pDVar22;" (assignment_expression "*puVar17 = pDVar22" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strlen((char *)pDVar22);" (assignment_expression "sVar8 = strlen((char *)pDVar22)" identifier = (call_expression "strlen((char *)pDVar22)" identifier (argument_list "((char *)pDVar22)" ( (cast_expression "(char *)pDVar22" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = pbVar16 + sVar8 + 2;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 2" identifier = (binary_expression "pbVar16 + sVar8 + 2" (binary_expression "pbVar16 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,end_of_sequence)" identifier (argument_list "(pbVar16,&bytes_read,0,end_of_sequence)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[1] = (int)dVar29;" (assignment_expression "puVar17[1] = (int)dVar29" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "pbVar16 = pbVar16 + bytes_read;" (assignment_expression "pbVar16 = pbVar16 + bytes_read" identifier = (binary_expression "pbVar16 + bytes_read" identifier + identifier)) ;) (expression_statement "dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence);" (assignment_expression "dVar29 = read_leb128(pbVar16,&bytes_read,0,end_of_sequence)" identifier = (call_expression "read_leb128(pbVar16,&bytes_read,0,end_of_sequence)" identifier (argument_list "(pbVar16,&bytes_read,0,end_of_sequence)" ( identifier , (pointer_expression "&bytes_read" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[2] = (int)dVar29;" (assignment_expression "puVar17[2] = (int)dVar29" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x0;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence;" (assignment_expression "pDVar37 = (DWARF2_Internal_LineInfo *)end_of_sequence" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)end_of_sequence" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence);" (assignment_expression "dVar29 = read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence)" identifier = (call_expression "read_leb128(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence)" identifier (argument_list "(pbVar16 + bytes_read,&bytes_read,0,end_of_sequence)" ( (binary_expression "pbVar16 + bytes_read" identifier + identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[3] = (int)dVar29;" (assignment_expression "puVar17[3] = (int)dVar29" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;)) })) (break_statement "break;" break ;)) (case_statement "case 1:" case number_literal :) (case_statement "case 10:" case number_literal :) (case_statement "case 0xb:\n              goto _L2741;" case number_literal : (goto_statement "goto _L2741;" goto statement_identifier ;)) (case_statement "case 2:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              iVar13 = (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }\n              uVar6 = linfo._20_4_ & 0xff;\nLAB_0005c370:\n              uVar6 = iVar13 * uVar6;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 == 0) break;\nLAB_0005ae7e:\n              state_machine_regs.view = 0;\n              dVar29 = dVar30;\n              break;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x0;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "iVar13 = (int)dVar29;" (assignment_expression "iVar13 = (int)dVar29" identifier = (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (if_statement "if (linfo.li_max_ops_per_insn != '\x01') {\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }" if (parenthesized_expression "(linfo.li_max_ops_per_insn != '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn != '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;\n                uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);\n                uVar6 = linfo._20_4_ & 0xff;\n                goto LAB_0005ae5c;\n              }" { (expression_statement "uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn;" (assignment_expression "uVar20 = (iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn" identifier = (binary_expression "(iVar13 + (uint)state_machine_regs.op_index) /\n                         (uint)linfo.li_max_ops_per_insn" (parenthesized_expression "(iVar13 + (uint)state_machine_regs.op_index)" ( (binary_expression "iVar13 + (uint)state_machine_regs.op_index" identifier + (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier))) )) / (cast_expression "(uint)linfo.li_max_ops_per_insn" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier)))) ;) (expression_statement "uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn);" (assignment_expression "uVar14 = (uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn)" identifier = (call_expression "(uchar)((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "((iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn)" ( (binary_expression "(iVar13 + (uint)state_machine_regs.op_index) %\n                                (uint)linfo.li_max_ops_per_insn" (parenthesized_expression "(iVar13 + (uint)state_machine_regs.op_index)" ( (binary_expression "iVar13 + (uint)state_machine_regs.op_index" identifier + (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier))) )) % (cast_expression "(uint)linfo.li_max_ops_per_insn" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier))) )))) ;) (expression_statement "uVar6 = linfo._20_4_ & 0xff;" (assignment_expression "uVar6 = linfo._20_4_ & 0xff" identifier = (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal)) ;) (goto_statement "goto LAB_0005ae5c;" goto statement_identifier ;) })) (expression_statement "uVar6 = linfo._20_4_ & 0xff;" (assignment_expression "uVar6 = linfo._20_4_ & 0xff" identifier = (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal)) ;) (labeled_statement "LAB_0005c370:\n              uVar6 = iVar13 * uVar6;" statement_identifier : (expression_statement "uVar6 = iVar13 * uVar6;" (assignment_expression "uVar6 = iVar13 * uVar6" identifier = (binary_expression "iVar13 * uVar6" identifier * identifier)) ;)) (expression_statement "dVar30 = state_machine_regs.address + uVar6;" (assignment_expression "dVar30 = state_machine_regs.address + uVar6" identifier = (binary_expression "state_machine_regs.address + uVar6" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (expression_statement "dVar29 = state_machine_regs.address + uVar6;" (assignment_expression "dVar29 = state_machine_regs.address + uVar6" identifier = (binary_expression "state_machine_regs.address + uVar6" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (if_statement "if (uVar6 == 0) break;" if (parenthesized_expression "(uVar6 == 0)" ( (binary_expression "uVar6 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (labeled_statement "LAB_0005ae7e:\n              state_machine_regs.view = 0;" statement_identifier : (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;)) (expression_statement "dVar29 = dVar30;" (assignment_expression "dVar29 = dVar30" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n              in_stack_ffffff2c = (uchar *)0x1;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);\n              state_machine_regs.line = state_machine_regs.line + (int)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x1;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x1" identifier = (cast_expression "(uchar *)0x1" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,&bytes_read,1,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,&bytes_read,1,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "state_machine_regs.line = state_machine_regs.line + (int)dVar29;" (assignment_expression "state_machine_regs.line = state_machine_regs.line + (int)dVar29" (field_expression "state_machine_regs.line" identifier . field_identifier) = (binary_expression "state_machine_regs.line + (int)dVar29" (field_expression "state_machine_regs.line" identifier . field_identifier) + (cast_expression "(int)dVar29" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n              in_stack_ffffff2c = (uchar *)0x0;\n              puVar35 = &bytes_read;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);\n              uVar6 = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              puVar11 = (uchar *)(uVar6 - 1);\n              state_machine_regs.file = uVar6;\n              if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }\n              goto LAB_0005b184;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x0;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "uVar6 = (uint)dVar29;" (assignment_expression "uVar6 = (uint)dVar29" identifier = (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "puVar11 = (uchar *)(uVar6 - 1);" (assignment_expression "puVar11 = (uchar *)(uVar6 - 1)" identifier = (cast_expression "(uchar *)(uVar6 - 1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar6 - 1)" ( (binary_expression "uVar6 - 1" identifier - number_literal) )))) ;) (expression_statement "state_machine_regs.file = uVar6;" (assignment_expression "state_machine_regs.file = uVar6" (field_expression "state_machine_regs.file" identifier . field_identifier) = identifier) ;) (if_statement "if ((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)) {\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }" if (parenthesized_expression "((local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0))" ( (binary_expression "(local_b8 == (DWARF2_Internal_LineInfo *)0x0) || (local_94 == (uchar *)0x0)" (parenthesized_expression "(local_b8 == (DWARF2_Internal_LineInfo *)0x0)" ( (binary_expression "local_b8 == (DWARF2_Internal_LineInfo *)0x0" identifier == (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(local_94 == (uchar *)0x0)" ( (binary_expression "local_94 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n                pcVar9 = "\n [Use file table entry %d]\n";\n              }" { (expression_statement "pcVar9 = "\n [Use file table entry %d]\n";" (assignment_expression "pcVar9 = "\n [Use file table entry %d]\n"" identifier = (string_literal ""\n [Use file table entry %d]\n"" " escape_sequence string_content escape_sequence ")) ;) }) (else_clause "else {\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }" else (compound_statement "{\n                if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }\n                pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(pcVar9,uVar6,local_94);\n                pcVar9 = "\n <over large file table index %u>";\n              }" { (if_statement "if (puVar11 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }" if (parenthesized_expression "(puVar11 < local_94)" ( (binary_expression "puVar11 < local_94" identifier < identifier) )) (compound_statement "{\n                  puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);\n                  puVar11 = (uchar *)puVar17[1];\n                  if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  break;\n                }" { (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + (int)puVar11 * 4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + (int)puVar11 * 4 * 4)" ( (binary_expression "(int)local_b8 + (int)puVar11 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)puVar11 * 4 * 4" (binary_expression "(int)puVar11 * 4" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) * number_literal)) )))) ;) (expression_statement "puVar11 = (uchar *)puVar17[1];" (assignment_expression "puVar11 = (uchar *)puVar17[1]" identifier = (cast_expression "(uchar *)puVar17[1]" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar17[1]" identifier [ number_literal ]))) ;) (if_statement "if (puVar11 == (uchar *)0x0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }" if (parenthesized_expression "(puVar11 == (uchar *)0x0)" ( (binary_expression "puVar11 == (uchar *)0x0" identifier == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    printf("\n./%s:[++]\n",*puVar17);\n                    dVar29 = state_machine_regs.address;\n                  }" { (expression_statement "printf("\n./%s:[++]\n",*puVar17);" (call_expression "printf("\n./%s:[++]\n",*puVar17)" identifier (argument_list "("\n./%s:[++]\n",*puVar17)" ( (string_literal ""\n./%s:[++]\n"" " escape_sequence string_content escape_sequence ") , (pointer_expression "*puVar17" * identifier) ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) }) (else_clause "else if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }" else (if_statement "if ((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)) {\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }\n                  else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }" if (parenthesized_expression "((local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0))" ( (binary_expression "(local_a4 == (undefined4 *)0x0) ||\n                          ((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)" (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0)" ( (binary_expression "(uchar *)local_b4 == (uchar *)0x0 && local_b4._4_4_ == 0" (binary_expression "(uchar *)local_b4 == (uchar *)0x0" (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (binary_expression "local_b4._4_4_ == 0" (field_expression "local_b4._4_4_" identifier . field_identifier) == number_literal)) ))) )) (compound_statement "{\n                    uVar21 = *puVar17;\n                    pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar9,uVar21);\n                    in_stack_ffffff2c = puVar11;\n                    dVar29 = state_machine_regs.address;\n                  }" { (expression_statement "uVar21 = *puVar17;" (assignment_expression "uVar21 = *puVar17" identifier = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;" (assignment_expression "pcVar9 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier (argument_list "(0,"\n [Use file %s in directory table entry %d]\n",5)" ( number_literal , (string_literal ""\n [Use file %s in directory table entry %d]\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9,uVar21);" (call_expression "printf(pcVar9,uVar21)" identifier (argument_list "(pcVar9,uVar21)" ( identifier , identifier ))) ;) (expression_statement "in_stack_ffffff2c = puVar11;" (assignment_expression "in_stack_ffffff2c = puVar11" identifier = identifier) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) }) (else_clause "else {\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }" else (compound_statement "{\n                    if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }\n                    in_stack_ffffff2c = (uchar *)*puVar17;\n                    printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);\n                    dVar29 = state_machine_regs.address;\n                  }" { (if_statement "if (local_b4._4_4_ < ((uchar *)local_b4 < puVar11)) {\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }" if (parenthesized_expression "(local_b4._4_4_ < ((uchar *)local_b4 < puVar11))" ( (binary_expression "local_b4._4_4_ < ((uchar *)local_b4 < puVar11)" (field_expression "local_b4._4_4_" identifier . field_identifier) < (parenthesized_expression "((uchar *)local_b4 < puVar11)" ( (binary_expression "(uchar *)local_b4 < puVar11" (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) < identifier) ))) )) (compound_statement "{\n                      pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);\n                      pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);\n                      warn(pcVar5,puVar11,pcVar9);\n                      pcVar9 = "\n <over large directory table entry %u>\n";\n                      goto LAB_0005b184;\n                    }" { (expression_statement "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4)" identifier = (call_expression "dwarf_vmatoa_1("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4)" identifier (argument_list "("u",ZEXT48(puVar35) << 0x20,(uint)(uchar *)local_b4)" ( (string_literal ""u"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)(uchar *)local_b4" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(uchar *)local_b4" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )))) ;) (expression_statement "pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5)" identifier = (cast_expression "(char *)dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"directory index %u > number of directories %s\n"\n                                                 ,5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n"\n                                                 ,5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar5,puVar11,pcVar9);" (call_expression "warn(pcVar5,puVar11,pcVar9)" identifier (argument_list "(pcVar5,puVar11,pcVar9)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar9 = "\n <over large directory table entry %u>\n";" (assignment_expression "pcVar9 = "\n <over large directory table entry %u>\n"" identifier = (string_literal ""\n <over large directory table entry %u>\n"" " escape_sequence string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005b184;" goto statement_identifier ;) })) (expression_statement "in_stack_ffffff2c = (uchar *)*puVar17;" (assignment_expression "in_stack_ffffff2c = (uchar *)*puVar17" identifier = (cast_expression "(uchar *)*puVar17" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar17" * identifier))) ;) (expression_statement "printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)]);" (call_expression "printf("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)])" identifier (argument_list "("\n%s/%s:\n",local_a4[(int)(puVar11 + -1)])" ( (string_literal ""\n%s/%s:\n"" " escape_sequence string_content escape_sequence ") , (subscript_expression "local_a4[(int)(puVar11 + -1)]" identifier [ (cast_expression "(int)(puVar11 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(puVar11 + -1)" ( (binary_expression "puVar11 + -1" identifier + number_literal) ))) ]) ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) }))))) (break_statement "break;" break ;) })) (expression_statement "pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"file index %u > number of files %u\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"file index %u > number of files %u\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"file index %u > number of files %u\n",5)" identifier (argument_list "(0,"file index %u > number of files %u\n",5)" ( number_literal , (string_literal ""file index %u > number of files %u\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9,uVar6,local_94);" (call_expression "warn(pcVar9,uVar6,local_94)" identifier (argument_list "(pcVar9,uVar6,local_94)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar9 = "\n <over large file table index %u>";" (assignment_expression "pcVar9 = "\n <over large file table index %u>"" identifier = (string_literal ""\n <over large file table index %u>"" " escape_sequence string_content ")) ;) }))) (goto_statement "goto LAB_0005b184;" goto statement_identifier ;)) (case_statement "case 5:\n              in_stack_ffffff2c = (uchar *)0x0;\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              state_machine_regs.column = (uint)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              dVar29 = state_machine_regs.address;\n              break;" case number_literal : (expression_statement "in_stack_ffffff2c = (uchar *)0x0;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x0" identifier = (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "state_machine_regs.column = (uint)dVar29;" (assignment_expression "state_machine_regs.column = (uint)dVar29" (field_expression "state_machine_regs.column" identifier . field_identifier) = (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);\n              local_bc = pDVar22;\n              break;" case number_literal : (expression_statement "state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);" (assignment_expression "state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0)" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (cast_expression "(int)(state_machine_regs.is_stmt == 0)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(state_machine_regs.is_stmt == 0)" ( (binary_expression "state_machine_regs.is_stmt == 0" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) == number_literal) )))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n              state_machine_regs.basic_block = 1;\n              local_bc = pDVar22;\n              break;" case number_literal : (expression_statement "state_machine_regs.basic_block = 1;" (assignment_expression "state_machine_regs.basic_block = 1" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n              uVar6 = linfo._20_4_ & 0xff;\n              iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));\n              local_bc = pDVar22;\n              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;\n              uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;\n              uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);\nLAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;\n              state_machine_regs.op_index = uVar14;\n              dVar30 = state_machine_regs.address + uVar6;\n              dVar29 = state_machine_regs.address + uVar6;\n              if (uVar6 != 0) goto LAB_0005ae7e;\n              break;" case number_literal : (expression_statement "uVar6 = linfo._20_4_ & 0xff;" (assignment_expression "uVar6 = linfo._20_4_ & 0xff" identifier = (binary_expression "linfo._20_4_ & 0xff" (field_expression "linfo._20_4_" identifier . field_identifier) & number_literal)) ;) (expression_statement "iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff));" (assignment_expression "iVar13 = (int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff))" identifier = (cast_expression "(int)((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff))" ( (binary_expression "(ulonglong)(~(uint)linfo.li_opcode_base & 0xff) /\n                            (ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)" (call_expression "(ulonglong)(~(uint)linfo.li_opcode_base & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(~(uint)linfo.li_opcode_base & 0xff)" ( (binary_expression "~(uint)linfo.li_opcode_base & 0xff" (unary_expression "~(uint)linfo.li_opcode_base" ~ (cast_expression "(uint)linfo.li_opcode_base" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_opcode_base" identifier . field_identifier))) & number_literal) ))) / (call_expression "(ulonglong)(longlong)(int)(linfo._28_4_ & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(linfo._28_4_ & 0xff)" ( (binary_expression "linfo._28_4_ & 0xff" (field_expression "linfo._28_4_" identifier . field_identifier) & number_literal) )))) )))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (if_statement "if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn == '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (goto_statement "goto LAB_0005c370;" goto statement_identifier ;)) (expression_statement "uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn;" (assignment_expression "uVar20 = ((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn" identifier = (binary_expression "((uint)state_machine_regs.op_index + iVar13) /\n                       (uint)linfo.li_max_ops_per_insn" (parenthesized_expression "((uint)state_machine_regs.op_index + iVar13)" ( (binary_expression "(uint)state_machine_regs.op_index + iVar13" (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) + identifier) )) / (cast_expression "(uint)linfo.li_max_ops_per_insn" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier)))) ;) (expression_statement "uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn);" (assignment_expression "uVar14 = (uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn)" identifier = (call_expression "(uchar)(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn)" (parenthesized_expression "(uchar)" ( identifier )) (argument_list "(((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn)" ( (binary_expression "((uint)state_machine_regs.op_index + iVar13) %\n                              (uint)linfo.li_max_ops_per_insn" (parenthesized_expression "((uint)state_machine_regs.op_index + iVar13)" ( (binary_expression "(uint)state_machine_regs.op_index + iVar13" (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) + identifier) )) % (cast_expression "(uint)linfo.li_max_ops_per_insn" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier))) )))) ;) (labeled_statement "LAB_0005ae5c:\n              uVar6 = uVar6 * uVar20;" statement_identifier : (expression_statement "uVar6 = uVar6 * uVar20;" (assignment_expression "uVar6 = uVar6 * uVar20" identifier = (binary_expression "uVar6 * uVar20" identifier * identifier)) ;)) (expression_statement "state_machine_regs.op_index = uVar14;" (assignment_expression "state_machine_regs.op_index = uVar14" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = identifier) ;) (expression_statement "dVar30 = state_machine_regs.address + uVar6;" (assignment_expression "dVar30 = state_machine_regs.address + uVar6" identifier = (binary_expression "state_machine_regs.address + uVar6" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (expression_statement "dVar29 = state_machine_regs.address + uVar6;" (assignment_expression "dVar29 = state_machine_regs.address + uVar6" identifier = (binary_expression "state_machine_regs.address + uVar6" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (if_statement "if (uVar6 != 0) goto LAB_0005ae7e;" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0005ae7e;" goto statement_identifier ;)) (break_statement "break;" break ;)) (case_statement "case 9:\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);\n              if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }\n              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;\n              dVar29 = state_machine_regs.address + local_84;\n              if (end_of_sequence <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;" case number_literal : (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + 3)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_bc->li_length + 3)" ( (binary_expression "(int)&local_bc->li_length + 3" (cast_expression "(int)&local_bc->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_bc->li_length" & (field_expression "local_bc->li_length" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (local_bc < end) {\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }\n              else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }" if (parenthesized_expression "(local_bc < end)" ( (binary_expression "local_bc < end" identifier < identifier) )) (compound_statement "{\n                iVar13 = 2;\nLAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);\n                local_84 = (uint)eVar32;\n              }" { (expression_statement "iVar13 = 2;" (assignment_expression "iVar13 = 2" identifier = number_literal) ;) (labeled_statement "LAB_0005c4cd:\n                eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" statement_identifier : (expression_statement "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13);" (assignment_expression "eVar32 = (*byte_get)((uchar *)pDVar22,iVar13)" identifier = (call_expression "(*byte_get)((uchar *)pDVar22,iVar13)" (parenthesized_expression "(*byte_get)" ( (pointer_expression "*byte_get" * identifier) )) (argument_list "((uchar *)pDVar22,iVar13)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;)) (expression_statement "local_84 = (uint)eVar32;" (assignment_expression "local_84 = (uint)eVar32" identifier = (cast_expression "(uint)eVar32" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) }) (else_clause "else {\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }" else (compound_statement "{\n                if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;\n                local_84 = 0;\n              }" { (if_statement "if ((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))\n                goto LAB_0005c4cd;" if (parenthesized_expression "((pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8))" ( (binary_expression "(pDVar22 < end) && (iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8)" (parenthesized_expression "(pDVar22 < end)" ( (binary_expression "pDVar22 < end" identifier < identifier) )) && (parenthesized_expression "(iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8)" ( (comma_expression "iVar13 = (int)end - (int)pDVar22, iVar13 - 1U < 8" (assignment_expression "iVar13 = (int)end - (int)pDVar22" identifier = (binary_expression "(int)end - (int)pDVar22" (cast_expression "(int)end" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDVar22" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar13 - 1U < 8" (binary_expression "iVar13 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_0005c4cd;" goto statement_identifier ;)) (expression_statement "local_84 = 0;" (assignment_expression "local_84 = 0" identifier = number_literal) ;) }))) (expression_statement "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;" (assignment_expression "state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) = (binary_expression "state_machine_regs._32_2_ & 0xff00" (field_expression "state_machine_regs._32_2_" identifier . field_identifier) & number_literal)) ;) (expression_statement "dVar29 = state_machine_regs.address + local_84;" (assignment_expression "dVar29 = state_machine_regs.address + local_84" identifier = (binary_expression "state_machine_regs.address + local_84" (field_expression "state_machine_regs.address" identifier . field_identifier) + identifier)) ;) (if_statement "if (end_of_sequence <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(end_of_sequence <= local_bc)" ( (binary_expression "end_of_sequence <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;)) (case_statement "case 0xc:\n              pDVar37 = end;\n              dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);\n              puVar11 = (uchar *)dVar29;\n              local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);\n              pcVar9 = "  Set ISA to %lu\n";\nLAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,pcVar9);\n              printf(pcVar9,puVar11);\n              dVar29 = state_machine_regs.address;\n              break;" case number_literal : (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" identifier (argument_list "((uchar *)pDVar22,&bytes_read,0,(uchar *)end)" ( (cast_expression "(uchar *)pDVar22" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (pointer_expression "&bytes_read" & identifier) , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "puVar11 = (uchar *)dVar29;" (assignment_expression "puVar11 = (uchar *)dVar29" identifier = (cast_expression "(uchar *)dVar29" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&pDVar22->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDVar22->li_length + bytes_read)" ( (binary_expression "(int)&pDVar22->li_length + bytes_read" (cast_expression "(int)&pDVar22->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDVar22->li_length" & (field_expression "pDVar22->li_length" identifier -> field_identifier))) + identifier) )))) ;) (expression_statement "pcVar9 = "  Set ISA to %lu\n";" (assignment_expression "pcVar9 = "  Set ISA to %lu\n"" identifier = (string_literal ""  Set ISA to %lu\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0005b184:\n              in_stack_ffffff2c = (uchar *)0x5;" statement_identifier : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9)" identifier (argument_list "(0,pcVar9)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar9,puVar11);" (call_expression "printf(pcVar9,puVar11)" identifier (argument_list "(pcVar9,puVar11)" ( identifier , identifier ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "default:\n              in_stack_ffffff2c = (uchar *)0x5;\n              pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n              printf(pcVar9,uVar6);\n              local_bc = pDVar22;\n              if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }\n              putc(10,*(FILE **)local_9c);\n              pDVar22 = local_bc;\n_L2741:\n              local_bc = pDVar22;\n              dVar29 = state_machine_regs.address;\n              if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }" default : (expression_statement "in_stack_ffffff2c = (uchar *)0x5;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x5" identifier = (cast_expression "(uchar *)0x5" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ")" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ")" identifier (argument_list "(0,"  Unknown opcode %d with operands: ")" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") ))))) ;) (expression_statement "printf(pcVar9,uVar6);" (call_expression "printf(pcVar9,uVar6)" identifier (argument_list "(pcVar9,uVar6)" ( identifier , identifier ))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (if_statement "if ((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)) {\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }" if (parenthesized_expression "((local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0))" ( (binary_expression "(local_90 != (uchar *)0x0) && (uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)" (parenthesized_expression "(local_90 != (uchar *)0x0)" ( (binary_expression "local_90 != (uchar *)0x0" identifier != (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0)" ( (comma_expression "uVar20 = (uint)local_90[uVar6 - 1], uVar20 != 0" (assignment_expression "uVar20 = (uint)local_90[uVar6 - 1]" identifier = (cast_expression "(uint)local_90[uVar6 - 1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "local_90[uVar6 - 1]" identifier [ (binary_expression "uVar6 - 1" identifier - number_literal) ]))) , (binary_expression "uVar20 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                puVar35 = &bytes_read;\n                for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }\n                pDVar37 = end;\n                dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);\n                in_stack_ffffff2c = "";\n                printf("0x%s%s",pcVar9);\n                local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n              }" { (expression_statement "puVar35 = &bytes_read;" (assignment_expression "puVar35 = &bytes_read" identifier = (pointer_expression "&bytes_read" & identifier)) ;) (for_statement "for (; uVar20 != 1; uVar20 = uVar20 - 1) {\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }" for ( ; (binary_expression "uVar20 != 1" identifier != number_literal) ; (assignment_expression "uVar20 = uVar20 - 1" identifier = (binary_expression "uVar20 - 1" identifier - number_literal)) ) (compound_statement "{\n                  puVar36 = puVar35;\n                  dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);\n                  pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);\n                  printf("0x%s%s",pcVar9,&DAT_0007c4b1);\n                  local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);\n                }" { (expression_statement "puVar36 = puVar35;" (assignment_expression "puVar36 = puVar35" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)local_bc,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)local_bc" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" identifier (argument_list "("x",ZEXT48(puVar36) << 0x20,(uint)dVar29)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar36) << 0x20" (call_expression "ZEXT48(puVar36)" identifier (argument_list "(puVar36)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "printf("0x%s%s",pcVar9,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",pcVar9,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",pcVar9,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_bc->li_length + bytes_read)" ( (binary_expression "(int)&local_bc->li_length + bytes_read" (cast_expression "(int)&local_bc->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_bc->li_length" & (field_expression "local_bc->li_length" identifier -> field_identifier))) + identifier) )))) ;) })) (expression_statement "pDVar37 = end;" (assignment_expression "pDVar37 = end" identifier = identifier) ;) (expression_statement "dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end);" (assignment_expression "dVar29 = read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end)" identifier = (call_expression "read_leb128((uchar *)local_bc,puVar35,0,(uchar *)end)" identifier (argument_list "((uchar *)local_bc,puVar35,0,(uchar *)end)" ( (cast_expression "(uchar *)local_bc" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal , (cast_expression "(uchar *)end" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29);" (assignment_expression "pcVar9 = dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier = (call_expression "dwarf_vmatoa_1("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" identifier (argument_list "("x",ZEXT48(puVar35) << 0x20,(uint)dVar29)" ( (string_literal ""x"" " string_content ") , (binary_expression "ZEXT48(puVar35) << 0x20" (call_expression "ZEXT48(puVar35)" identifier (argument_list "(puVar35)" ( identifier ))) << number_literal) , (cast_expression "(uint)dVar29" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (expression_statement "in_stack_ffffff2c = "";" (assignment_expression "in_stack_ffffff2c = """ identifier = (string_literal """" " ")) ;) (expression_statement "printf("0x%s%s",pcVar9);" (call_expression "printf("0x%s%s",pcVar9)" identifier (argument_list "("0x%s%s",pcVar9)" ( (string_literal ""0x%s%s"" " string_content ") , identifier ))) ;) (expression_statement "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read);" (assignment_expression "local_bc = (DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read)" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)((int)&local_bc->li_length + bytes_read)" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_bc->li_length + bytes_read)" ( (binary_expression "(int)&local_bc->li_length + bytes_read" (cast_expression "(int)&local_bc->li_length" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_bc->li_length" & (field_expression "local_bc->li_length" identifier -> field_identifier))) + identifier) )))) ;) })) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "pDVar22 = local_bc;" (assignment_expression "pDVar22 = local_bc" identifier = identifier) ;) (labeled_statement "_L2741:\n              local_bc = pDVar22;" statement_identifier : (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;)) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if (uVar6 == 1) {\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }" if (parenthesized_expression "(uVar6 == 1)" ( (binary_expression "uVar6 == 1" identifier == number_literal) )) (compound_statement "{\njoined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }\n                sVar8 = strlen(pcVar9);\n                if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }\n                if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }\n                state_machine_regs.view = state_machine_regs.view + 1;\n                if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar5);\n                dVar29 = state_machine_regs.address;\n              }" { (labeled_statement "joined_r0x0005af93:\n                if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }" statement_identifier : (if_statement "if (local_b8 == (DWARF2_Internal_LineInfo *)0x0) {\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }\n                else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }" if (parenthesized_expression "(local_b8 == (DWARF2_Internal_LineInfo *)0x0)" ( (binary_expression "local_b8 == (DWARF2_Internal_LineInfo *)0x0" identifier == (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar9 = "<unknown>";\nLAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);\n                }" { (expression_statement "pcVar9 = "<unknown>";" (assignment_expression "pcVar9 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005afab:\n                  pcVar9 = (char *)dcgettext(0,pcVar9,5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar9,5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar9,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar9,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar9,5)" identifier (argument_list "(0,pcVar9,5)" ( number_literal , identifier , number_literal ))))) ;)) }) (else_clause "else {\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }" else (compound_statement "{\n                  puVar11 = (uchar *)(state_machine_regs.file - 1);\n                  if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);\n                }" { (expression_statement "puVar11 = (uchar *)(state_machine_regs.file - 1);" (assignment_expression "puVar11 = (uchar *)(state_machine_regs.file - 1)" identifier = (cast_expression "(uchar *)(state_machine_regs.file - 1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(state_machine_regs.file - 1)" ( (binary_expression "state_machine_regs.file - 1" (field_expression "state_machine_regs.file" identifier . field_identifier) - number_literal) )))) ;) (if_statement "if (local_94 <= puVar11) {\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" if (parenthesized_expression "(local_94 <= puVar11)" ( (binary_expression "local_94 <= puVar11" identifier <= identifier) )) (compound_statement "{\n                    pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(pcVar9,puVar11);\n                    pcVar9 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"corrupt file index %u encountered\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"corrupt file index %u encountered\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"corrupt file index %u encountered\n",5)" identifier (argument_list "(0,"corrupt file index %u encountered\n",5)" ( number_literal , (string_literal ""corrupt file index %u encountered\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "warn(pcVar9,puVar11);" (call_expression "warn(pcVar9,puVar11)" identifier (argument_list "(pcVar9,puVar11)" ( identifier , identifier ))) ;) (expression_statement "pcVar9 = "<corrupt>";" (assignment_expression "pcVar9 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005afab;" goto statement_identifier ;) })) (expression_statement "pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4);" (assignment_expression "pcVar9 = *(char **)((int)local_b8 + (int)puVar11 * 4 * 4)" identifier = (pointer_expression "*(char **)((int)local_b8 + (int)puVar11 * 4 * 4)" * (cast_expression "(char **)((int)local_b8 + (int)puVar11 * 4 * 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)local_b8 + (int)puVar11 * 4 * 4)" ( (binary_expression "(int)local_b8 + (int)puVar11 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)puVar11 * 4 * 4" (binary_expression "(int)puVar11 * 4" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) * number_literal)) ))))) ;) })))) (expression_statement "sVar8 = strlen(pcVar9);" (assignment_expression "sVar8 = strlen(pcVar9)" identifier = (call_expression "strlen(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (if_statement "if (sVar8 < 0x24) {\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }\n                else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }" if (parenthesized_expression "(sVar8 < 0x24)" ( (binary_expression "sVar8 < 0x24" identifier < number_literal) )) (compound_statement "{\n                  in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                  pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\nLAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n                  state_machine_regs.address._0_4_ = (undefined4)dVar29;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }\n                }" { (expression_statement "in_stack_ffffff2c = (uchar *)(sVar8 + 1);" (assignment_expression "in_stack_ffffff2c = (uchar *)(sVar8 + 1)" identifier = (cast_expression "(uchar *)(sVar8 + 1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar8 + 1)" ( (binary_expression "sVar8 + 1" identifier + number_literal) )))) ;) (expression_statement "pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);" (assignment_expression "pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c)" identifier = (cast_expression "(char *)xmalloc((size_t)in_stack_ffffff2c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((size_t)in_stack_ffffff2c)" identifier (argument_list "((size_t)in_stack_ffffff2c)" ( (cast_expression "(size_t)in_stack_ffffff2c" ( (type_descriptor "size_t" primitive_type) ) identifier) ))))) ;) (expression_statement "strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);" (call_expression "strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c)" identifier (argument_list "(pcVar5,pcVar9,(size_t)in_stack_ffffff2c)" ( identifier , identifier , (cast_expression "(size_t)in_stack_ffffff2c" ( (type_descriptor "size_t" primitive_type) ) identifier) ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (labeled_statement "LAB_0005ac8b:\n                  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" statement_identifier : (expression_statement "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" (assignment_expression "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20)" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (call_expression "(undefined4)(dVar29 >> 0x20)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "(dVar29 >> 0x20)" ( (binary_expression "dVar29 >> 0x20" identifier >> number_literal) )))) ;)) (expression_statement "state_machine_regs.address._0_4_ = (undefined4)dVar29;" (assignment_expression "state_machine_regs.address._0_4_ = (undefined4)dVar29" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (cast_expression "(undefined4)dVar29" ( (type_descriptor "undefined4" type_identifier) ) identifier)) ;) (if_statement "if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn == '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                    state_machine_regs.address = dVar29;\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);" (call_expression "printf("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_)" identifier (argument_list "("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_)" ( (string_literal ""%-35s  %11d  %#18llx"" " string_content ") , identifier , (field_expression "state_machine_regs.line" identifier . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) , (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) ))) ;) (expression_statement "state_machine_regs.address = dVar29;" (assignment_expression "state_machine_regs.address = dVar29" (field_expression "state_machine_regs.address" identifier . field_identifier) = identifier) ;) }) (else_clause "else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }" else (compound_statement "{\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                    state_machine_regs.address = dVar29;\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);" (call_expression "printf("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index)" identifier (argument_list "("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index)" ( (string_literal ""%-35s  %11d  %#18llx[%d]"" " string_content ") , identifier , (field_expression "state_machine_regs.line" identifier . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) , (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) ))) ;) (expression_statement "state_machine_regs.address = dVar29;" (assignment_expression "state_machine_regs.address = dVar29" (field_expression "state_machine_regs.address" identifier . field_identifier) = identifier) ;) }))) }) (else_clause "else {\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }" else (compound_statement "{\n                  if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }\n                  strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);\n                  dVar29 = state_machine_regs.address;\n                  if (do_wide == 0) goto LAB_0005ac8b;\n                  if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }\n                }" { (if_statement "if (do_wide == 0) {\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }\n                  else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }" if (parenthesized_expression "(do_wide == 0)" ( (binary_expression "do_wide == 0" identifier == number_literal) )) (compound_statement "{\n                    pcVar5 = (char *)xmalloc(0x24);\n                    in_stack_ffffff2c = (uchar *)0x24;\n                    pcVar9 = pcVar9 + (sVar8 - 0x23);\n                  }" { (expression_statement "pcVar5 = (char *)xmalloc(0x24);" (assignment_expression "pcVar5 = (char *)xmalloc(0x24)" identifier = (cast_expression "(char *)xmalloc(0x24)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x24)" identifier (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "in_stack_ffffff2c = (uchar *)0x24;" (assignment_expression "in_stack_ffffff2c = (uchar *)0x24" identifier = (cast_expression "(uchar *)0x24" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = pcVar9 + (sVar8 - 0x23);" (assignment_expression "pcVar9 = pcVar9 + (sVar8 - 0x23)" identifier = (binary_expression "pcVar9 + (sVar8 - 0x23)" identifier + (parenthesized_expression "(sVar8 - 0x23)" ( (binary_expression "sVar8 - 0x23" identifier - number_literal) )))) ;) }) (else_clause "else {\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }" else (compound_statement "{\n                    in_stack_ffffff2c = (uchar *)(sVar8 + 1);\n                    pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);\n                  }" { (expression_statement "in_stack_ffffff2c = (uchar *)(sVar8 + 1);" (assignment_expression "in_stack_ffffff2c = (uchar *)(sVar8 + 1)" identifier = (cast_expression "(uchar *)(sVar8 + 1)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(sVar8 + 1)" ( (binary_expression "sVar8 + 1" identifier + number_literal) )))) ;) (expression_statement "pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c);" (assignment_expression "pcVar5 = (char *)xmalloc((size_t)in_stack_ffffff2c)" identifier = (cast_expression "(char *)xmalloc((size_t)in_stack_ffffff2c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((size_t)in_stack_ffffff2c)" identifier (argument_list "((size_t)in_stack_ffffff2c)" ( (cast_expression "(size_t)in_stack_ffffff2c" ( (type_descriptor "size_t" primitive_type) ) identifier) ))))) ;) }))) (expression_statement "strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c);" (call_expression "strncpy(pcVar5,pcVar9,(size_t)in_stack_ffffff2c)" identifier (argument_list "(pcVar5,pcVar9,(size_t)in_stack_ffffff2c)" ( identifier , identifier , (cast_expression "(size_t)in_stack_ffffff2c" ( (type_descriptor "size_t" primitive_type) ) identifier) ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if (do_wide == 0) goto LAB_0005ac8b;" if (parenthesized_expression "(do_wide == 0)" ( (binary_expression "do_wide == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005ac8b;" goto statement_identifier ;)) (if_statement "if (linfo.li_max_ops_per_insn == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }" if (parenthesized_expression "(linfo.li_max_ops_per_insn == '\x01')" ( (binary_expression "linfo.li_max_ops_per_insn == '\x01'" (field_expression "linfo.li_max_ops_per_insn" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_);" (call_expression "printf("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_)" identifier (argument_list "("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_)" ( (string_literal ""%s  %11d  %#18llx"" " string_content ") , identifier , (field_expression "state_machine_regs.line" identifier . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) , (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) ))) ;) }) (else_clause "else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }" else (compound_statement "{\n                    printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index);" (call_expression "printf("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index)" identifier (argument_list "("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,\n                           (undefined4)state_machine_regs.address,state_machine_regs.address._4_4_,\n                           (uint)state_machine_regs.op_index)" ( (string_literal ""%s  %11d  %#18llx[%d]"" " string_content ") , identifier , (field_expression "state_machine_regs.line" identifier . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) , (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(uint)state_machine_regs.op_index" ( (type_descriptor "uint" type_identifier) ) (field_expression "state_machine_regs.op_index" identifier . field_identifier)) ))) ;) }))) }))) (if_statement "if (state_machine_regs.view == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }" if (parenthesized_expression "(state_machine_regs.view == 0)" ( (binary_expression "state_machine_regs.view == 0" (field_expression "state_machine_regs.view" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n                  printf("  %6u\n",state_machine_regs.view);\n                }" else (compound_statement "{\n                  printf("  %6u\n",state_machine_regs.view);\n                }" { (expression_statement "printf("  %6u\n",state_machine_regs.view);" (call_expression "printf("  %6u\n",state_machine_regs.view)" identifier (argument_list "("  %6u\n",state_machine_regs.view)" ( (string_literal ""  %6u\n"" " string_content escape_sequence ") , (field_expression "state_machine_regs.view" identifier . field_identifier) ))) ;) }))) (expression_statement "state_machine_regs.view = state_machine_regs.view + 1;" (assignment_expression "state_machine_regs.view = state_machine_regs.view + 1" (field_expression "state_machine_regs.view" identifier . field_identifier) = (binary_expression "state_machine_regs.view + 1" (field_expression "state_machine_regs.view" identifier . field_identifier) + number_literal)) ;) (if_statement "if (uVar6 == 0xffffffff) {\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" if (parenthesized_expression "(uVar6 == 0xffffffff)" ( (binary_expression "uVar6 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n                  state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;\n                  state_machine_regs.address._0_4_ = 0;\n                  state_machine_regs.address._4_4_ = 0;\n                  state_machine_regs.view = 0;\n                  state_machine_regs.op_index = '\0';\n                  state_machine_regs.end_sequence = '\0';\n                  state_machine_regs.file = 1;\n                  state_machine_regs.line = 1;\n                  state_machine_regs.column = 0;\n                  state_machine_regs.basic_block = 0;\n                  state_machine_regs.last_file_entry = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff;" (assignment_expression "state_machine_regs.is_stmt = (uint)linfo._20_4_ >> 0x10 & 0xff" (field_expression "state_machine_regs.is_stmt" identifier . field_identifier) = (binary_expression "(uint)linfo._20_4_ >> 0x10 & 0xff" (binary_expression "(uint)linfo._20_4_ >> 0x10" (cast_expression "(uint)linfo._20_4_" ( (type_descriptor "uint" type_identifier) ) (field_expression "linfo._20_4_" identifier . field_identifier)) >> number_literal) & number_literal)) ;) (expression_statement "state_machine_regs.address._0_4_ = 0;" (assignment_expression "state_machine_regs.address._0_4_ = 0" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.address._4_4_ = 0;" (assignment_expression "state_machine_regs.address._4_4_ = 0" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.view = 0;" (assignment_expression "state_machine_regs.view = 0" (field_expression "state_machine_regs.view" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.op_index = '\0';" (assignment_expression "state_machine_regs.op_index = '\0'" (field_expression "state_machine_regs.op_index" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.end_sequence = '\0';" (assignment_expression "state_machine_regs.end_sequence = '\0'" (field_expression "state_machine_regs.end_sequence" identifier . field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "state_machine_regs.file = 1;" (assignment_expression "state_machine_regs.file = 1" (field_expression "state_machine_regs.file" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.line = 1;" (assignment_expression "state_machine_regs.line = 1" (field_expression "state_machine_regs.line" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.column = 0;" (assignment_expression "state_machine_regs.column = 0" (field_expression "state_machine_regs.column" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.basic_block = 0;" (assignment_expression "state_machine_regs.basic_block = 0" (field_expression "state_machine_regs.basic_block" identifier . field_identifier) = number_literal) ;) (expression_statement "state_machine_regs.last_file_entry = 0;" (assignment_expression "state_machine_regs.last_file_entry = 0" (field_expression "state_machine_regs.last_file_entry" identifier . field_identifier) = number_literal) ;) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) })) (expression_statement "free(pcVar5);" (call_expression "free(pcVar5)" identifier (argument_list "(pcVar5)" ( identifier ))) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) }))) })) (if_statement "if (end_of_sequence <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(end_of_sequence <= local_bc)" ( (binary_expression "end_of_sequence <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;) })) }))) (expression_statement "dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address);" (assignment_expression "dVar29 = CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address)" identifier = (call_expression "CONCAT44(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address)" identifier (argument_list "(state_machine_regs.address._4_4_,(undefined4)state_machine_regs.address)" ( (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) , (cast_expression "(undefined4)state_machine_regs.address" ( (type_descriptor "undefined4" type_identifier) ) (field_expression "state_machine_regs.address" identifier . field_identifier)) )))) ;) (expression_statement "local_bc = pDVar22;" (assignment_expression "local_bc = pDVar22" identifier = identifier) ;) (expression_statement "local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8;" (assignment_expression "local_9c = (DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8" identifier = (cast_expression "(DWARF2_Internal_LineInfo *)PTR_stdout_000b3fd8" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "linfo.li_length._0_4_ = saved_linfo_11206;" (assignment_expression "linfo.li_length._0_4_ = saved_linfo_11206" (field_expression "linfo.li_length._0_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_length._4_4_ = DAT_000b75e4;" (assignment_expression "linfo.li_length._4_4_ = DAT_000b75e4" (field_expression "linfo.li_length._4_4_" (field_expression "linfo.li_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._8_4_ = DAT_000b75e8;" (assignment_expression "linfo._8_4_ = DAT_000b75e8" (field_expression "linfo._8_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._0_4_ = DAT_000b75ec;" (assignment_expression "linfo.li_prologue_length._0_4_ = DAT_000b75ec" (field_expression "linfo.li_prologue_length._0_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo.li_prologue_length._4_4_ = DAT_000b75f0;" (assignment_expression "linfo.li_prologue_length._4_4_ = DAT_000b75f0" (field_expression "linfo.li_prologue_length._4_4_" (field_expression "linfo.li_prologue_length" identifier . field_identifier) . field_identifier) = identifier) ;) (expression_statement "linfo._20_4_ = DAT_000b75f4;" (assignment_expression "linfo._20_4_ = DAT_000b75f4" (field_expression "linfo._20_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_line_base = DAT_000b75f8;" (assignment_expression "linfo.li_line_base = DAT_000b75f8" (field_expression "linfo.li_line_base" identifier . field_identifier) = identifier) ;) (expression_statement "linfo._28_4_ = DAT_000b75fc;" (assignment_expression "linfo._28_4_ = DAT_000b75fc" (field_expression "linfo._28_4_" identifier . field_identifier) = identifier) ;) (expression_statement "linfo.li_offset_size = DAT_000b7600;" (assignment_expression "linfo.li_offset_size = DAT_000b7600" (field_expression "linfo.li_offset_size" identifier . field_identifier) = identifier) ;) (labeled_statement "LAB_0005adb0:\n        state_machine_regs.address = dVar29;" statement_identifier : (expression_statement "state_machine_regs.address = dVar29;" (assignment_expression "state_machine_regs.address = dVar29" (field_expression "state_machine_regs.address" identifier . field_identifier) = identifier) ;)) (if_statement "if (local_b8 != (DWARF2_Internal_LineInfo *)0x0) {\n          free(local_b8);\n        }" if (parenthesized_expression "(local_b8 != (DWARF2_Internal_LineInfo *)0x0)" ( (binary_expression "local_b8 != (DWARF2_Internal_LineInfo *)0x0" identifier != (cast_expression "(DWARF2_Internal_LineInfo *)0x0" ( (type_descriptor "DWARF2_Internal_LineInfo *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_b8);\n        }" { (expression_statement "free(local_b8);" (call_expression "free(local_b8)" identifier (argument_list "(local_b8)" ( identifier ))) ;) })) (if_statement "if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n        }" if (parenthesized_expression "(local_a4 != (undefined4 *)0x0)" ( (binary_expression "local_a4 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_a4);\n        }" { (expression_statement "free(local_a4);" (call_expression "free(local_a4)" identifier (argument_list "(local_a4)" ( identifier ))) ;) })) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "uVar25 = end < local_bc;" (assignment_expression "uVar25 = end < local_bc" identifier = (binary_expression "end < local_bc" identifier < identifier)) ;) (expression_statement "uVar27 = end == local_bc;" (assignment_expression "uVar27 = end == local_bc" identifier = (binary_expression "end == local_bc" identifier == identifier)) ;) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (if_statement "if (end <= local_bc) {\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }" if (parenthesized_expression "(end <= local_bc)" ( (binary_expression "end <= local_bc" identifier <= identifier) )) (compound_statement "{\nLAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);\n          state_machine_regs.address._0_4_ = (undefined4)dVar29;\n          return local_58;\n        }" { (labeled_statement "LAB_0005adf9:\n          state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" statement_identifier : (expression_statement "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" (assignment_expression "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20)" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (call_expression "(undefined4)(dVar29 >> 0x20)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "(dVar29 >> 0x20)" ( (binary_expression "dVar29 >> 0x20" identifier >> number_literal) )))) ;)) (expression_statement "state_machine_regs.address._0_4_ = (undefined4)dVar29;" (assignment_expression "state_machine_regs.address._0_4_ = (undefined4)dVar29" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (cast_expression "(undefined4)dVar29" ( (type_descriptor "undefined4" type_identifier) ) identifier)) ;) (return_statement "return local_58;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) }) (else_clause "else if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }" else (if_statement "if ((do_debug_lines & 2U) != 0) {\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }" if (parenthesized_expression "((do_debug_lines & 2U) != 0)" ( (binary_expression "(do_debug_lines & 2U) != 0" (parenthesized_expression "(do_debug_lines & 2U)" ( (binary_expression "do_debug_lines & 2U" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);\n  }" { (expression_statement "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8);" (call_expression "introduce((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8)" identifier (argument_list "((dwarf_section *)section->name,(bfd_boolean)&section->filename,\n              (dwarf_section *)PTR_stdout_000b3fd8)" ( (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)) , (cast_expression "(dwarf_section *)PTR_stdout_000b3fd8" ( (type_descriptor "dwarf_section *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) })))) (labeled_statement "LAB_0005a988:\n  uVar6 = 1;" statement_identifier : (expression_statement "uVar6 = 1;" (assignment_expression "uVar6 = 1" identifier = number_literal) ;)) (expression_statement "dVar29 = state_machine_regs.address;" (assignment_expression "dVar29 = state_machine_regs.address" identifier = (field_expression "state_machine_regs.address" identifier . field_identifier)) ;) (labeled_statement "LAB_0005a98d:\n  state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" statement_identifier : (expression_statement "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20);" (assignment_expression "state_machine_regs.address._4_4_ = (undefined4)(dVar29 >> 0x20)" (field_expression "state_machine_regs.address._4_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (call_expression "(undefined4)(dVar29 >> 0x20)" (parenthesized_expression "(undefined4)" ( identifier )) (argument_list "(dVar29 >> 0x20)" ( (binary_expression "dVar29 >> 0x20" identifier >> number_literal) )))) ;)) (expression_statement "state_machine_regs.address._0_4_ = (undefined4)dVar29;" (assignment_expression "state_machine_regs.address._0_4_ = (undefined4)dVar29" (field_expression "state_machine_regs.address._0_4_" (field_expression "state_machine_regs.address" identifier . field_identifier) . field_identifier) = (cast_expression "(undefined4)dVar29" ( (type_descriptor "undefined4" type_identifier) ) identifier)) ;) (return_statement "return uVar6;" return identifier ;) })))
(translation_unit "undefined4 FUN_0005a8e0(int param_1)\n\n{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}\n\n" (function_definition "undefined4 FUN_0005a8e0(int param_1)\n\n{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" type_identifier (function_declarator "FUN_0005a8e0(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" { (declaration "code *pcVar1;" type_identifier (pointer_declarator "*pcVar1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "undefined1 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "ushort uVar4;" type_identifier identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "byte bVar13;" type_identifier identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "size_t sVar8;" primitive_type identifier ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "size_t __n;" primitive_type identifier ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "byte *pbVar16;" type_identifier (pointer_declarator "*pbVar16" * identifier) ;) (declaration "undefined4 *puVar17;" type_identifier (pointer_declarator "*puVar17" * identifier) ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "bool bVar21;" primitive_type identifier ;) (declaration "bool bVar22;" primitive_type identifier ;) (declaration "undefined1 uVar23;" type_identifier identifier ;) (declaration "bool bVar24;" primitive_type identifier ;) (declaration "undefined1 uVar25;" type_identifier identifier ;) (declaration "byte bVar26;" type_identifier identifier ;) (declaration "ulonglong uVar27;" type_identifier identifier ;) (declaration "longlong lVar28;" type_identifier identifier ;) (declaration "longlong lVar29;" type_identifier identifier ;) (declaration "longlong lVar30;" type_identifier identifier ;) (declaration "undefined *puVar31;" type_identifier (pointer_declarator "*puVar31" * identifier) ;) (declaration "undefined1 *puVar32;" type_identifier (pointer_declarator "*puVar32" * identifier) ;) (declaration "byte *local_bc;" type_identifier (pointer_declarator "*local_bc" * identifier) ;) (declaration "byte *local_b8;" type_identifier (pointer_declarator "*local_b8" * identifier) ;) (declaration "byte *local_b4;" type_identifier (pointer_declarator "*local_b4" * identifier) ;) (declaration "uint local_b0;" type_identifier identifier ;) (declaration "undefined4 *local_ac;" type_identifier (pointer_declarator "*local_ac" * identifier) ;) (declaration "undefined4 *local_a4;" type_identifier (pointer_declarator "*local_a4" * identifier) ;) (declaration "byte *local_9c;" type_identifier (pointer_declarator "*local_9c" * identifier) ;) (declaration "int local_98;" primitive_type identifier ;) (declaration "uint local_94;" type_identifier identifier ;) (declaration "int local_90;" primitive_type identifier ;) (declaration "uint local_8c;" type_identifier identifier ;) (declaration "undefined1 local_88;" type_identifier identifier ;) (declaration "uint uStack_84;" type_identifier identifier ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint local_78;" type_identifier identifier ;) (declaration "char *local_6c;" primitive_type (pointer_declarator "*local_6c" * identifier) ;) (declaration "byte *local_60;" type_identifier (pointer_declarator "*local_60" * identifier) ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "undefined1 *local_54 [3];" type_identifier (pointer_declarator "*local_54 [3]" * (array_declarator "local_54 [3]" identifier [ number_literal ])) ;) (declaration "byte *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "int local_44;" primitive_type identifier ;) (declaration "undefined4 local_40;" type_identifier identifier ;) (declaration "undefined4 local_3c;" type_identifier identifier ;) (declaration "uint local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "int local_28;" primitive_type identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "uint local_20 [3];" type_identifier (array_declarator "local_20 [3]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar26 = 0;" (assignment_expression "bVar26 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x5a8e9;" (assignment_expression "uStack_14 = 0x5a8e9" identifier = number_literal) ;) (expression_statement "local_bc = *(byte **)(param_1 + 0x10);" (assignment_expression "local_bc = *(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 "pbVar5 = local_bc + *(int *)(param_1 + 0x1c);" (assignment_expression "pbVar5 = local_bc + *(int *)(param_1 + 0x1c)" identifier = (binary_expression "local_bc + *(int *)(param_1 + 0x1c)" identifier + (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))))) ;) (if_statement "if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" if (parenthesized_expression "(DAT_000b9db0 == 0)" ( (binary_expression "DAT_000b9db0 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_000b9db0 = 1;\n  }" { (expression_statement "DAT_000b9db0 = 1;" (assignment_expression "DAT_000b9db0 = 1" identifier = number_literal) ;) }) (else_clause "else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" else (if_statement "if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" if (parenthesized_expression "((DAT_000b9db0 & 1) == 0)" ( (binary_expression "(DAT_000b9db0 & 1) == 0" (parenthesized_expression "(DAT_000b9db0 & 1)" ( (binary_expression "DAT_000b9db0 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" { (if_statement "if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }" if (parenthesized_expression "((DAT_000b9db0 & 2) == 0)" ( (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar23 = local_bc < pbVar5;" (assignment_expression "uVar23 = local_bc < pbVar5" identifier = (binary_expression "local_bc < pbVar5" identifier < identifier)) ;) (expression_statement "uVar25 = local_bc == pbVar5;" (assignment_expression "uVar25 = local_bc == pbVar5" identifier = (binary_expression "local_bc == pbVar5" identifier == identifier)) ;) (if_statement "if (!(bool)uVar23) {\n      return 1;\n    }" if (parenthesized_expression "(!(bool)uVar23)" ( (unary_expression "!(bool)uVar23" ! (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n      return 1;\n    }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })))) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 8)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 8)" * (cast_expression "(undefined4 *)(param_1 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (if_statement "if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" if (parenthesized_expression "((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0))" ( (binary_expression "(DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" (parenthesized_expression "(DAT_000b9d98 == 0)" ( (binary_expression "DAT_000b9d98 == 0" identifier == number_literal) )) || (parenthesized_expression "(iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" ( (comma_expression "iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0" (assignment_expression "iVar14 = *(int *)(param_1 + 0xc)" identifier = (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) ))))) , (binary_expression "iVar14 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" identifier (argument_list "(0,"Raw dump of debug contents of section %s:\n\n",5)" ( number_literal , (string_literal ""Raw dump of debug contents of section %s:\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" else (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" identifier (argument_list "(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" ( number_literal , (string_literal ""Raw dump of debug contents of section %s (loaded from %s):\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,iVar14);" (call_expression "printf(pcVar6,uVar11,iVar14)" identifier (argument_list "(pcVar6,uVar11,iVar14)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "puVar2 = PTR_stdout_000b3fd8;" (assignment_expression "puVar2 = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "bVar21 = local_bc < pbVar5;" (assignment_expression "bVar21 = local_bc < pbVar5" identifier = (binary_expression "local_bc < pbVar5" identifier < identifier)) ;) (expression_statement "bVar24 = local_bc == pbVar5;" (assignment_expression "bVar24 = local_bc == pbVar5" identifier = (binary_expression "local_bc == pbVar5" identifier == identifier)) ;) (expression_statement "local_b4 = local_bc;" (assignment_expression "local_b4 = local_bc" identifier = identifier) ;) (if_statement "if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }" { (labeled_statement "LAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" statement_identifier : (do_statement "do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" do (compound_statement "{\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    }" { (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.";" (assignment_expression "pbVar16 = (byte *)".debug_line."" identifier = (cast_expression "(byte *)".debug_line."" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line."" " string_content "))) ;) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);" do (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" identifier = false) ;) (expression_statement "bVar21 = (!bVar21 && !bVar24) == bVar21;" (assignment_expression "bVar21 = (!bVar21 && !bVar24) == bVar21" identifier = (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" ( (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier)) ;) (if_statement "if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }" { (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar22 = *pbVar20 < *pbVar16;" (assignment_expression "bVar22 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar21 = *pbVar20 == *pbVar16;" (assignment_expression "bVar21 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar21)" ( identifier )) ;) (if_statement "if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;" if (parenthesized_expression "((!bVar22 && !bVar21) == bVar22)" ( (binary_expression "(!bVar22 && !bVar21) == bVar22" (parenthesized_expression "(!bVar22 && !bVar21)" ( (binary_expression "!bVar22 && !bVar21" (unary_expression "!bVar22" ! identifier) && (unary_expression "!bVar21" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005bd30;" goto statement_identifier ;)) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" identifier = identifier) ;) (if_statement "if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" if (parenthesized_expression "((char)DAT_000b763c == '\0')" ( (binary_expression "(char)DAT_000b763c == '\0'" (cast_expression "(char)DAT_000b763c" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" { (expression_statement "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";" (assignment_expression "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n"" identifier = (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ")) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (labeled_statement "LAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" identifier = (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005d6b6;" goto statement_identifier ;) })) (expression_statement "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff" identifier = (binary_expression "DAT_000b7634 >> 0x10 & 0xff" (binary_expression "DAT_000b7634 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) }) (else_clause "else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" else (compound_statement "{\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" { (labeled_statement "LAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);" statement_identifier : (expression_statement "local_94 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_94 = FUN_0004d730(&local_40,&local_48)" identifier = (call_expression "FUN_0004d730(&local_40,&local_48)" identifier (argument_list "(&local_40,&local_48)" ( (pointer_expression "&local_40" & identifier) , (pointer_expression "&local_48" & identifier) )))) ;)) (if_statement "if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" if (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" { (labeled_statement "LAB_0005d6b6:\n          uVar23 = 0;" statement_identifier : (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;)) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" identifier = (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal)) ;) (if_statement "if ((bool)uVar25) {\n            return 0;\n          }" if (parenthesized_expression "((bool)uVar25)" ( (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_0005a9d0;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Offset:                      0x%lx\n",5)" identifier (argument_list "(0,"  Offset:                      0x%lx\n",5)" ( number_literal , (string_literal ""  Offset:                      0x%lx\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" ( identifier , (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "uVar11 = local_40;" (assignment_expression "uVar11 = local_40" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Length:                      %ld\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Length:                      %ld\n",5)" identifier (argument_list "(0,"  Length:                      %ld\n",5)" ( number_literal , (string_literal ""  Length:                      %ld\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_38 & 0xffff;" (assignment_expression "uVar19 = local_38 & 0xffff" identifier = (binary_expression "local_38 & 0xffff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  DWARF Version:               %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  DWARF Version:               %d\n",5)" identifier (argument_list "(0,"  DWARF Version:               %d\n",5)" ( number_literal , (string_literal ""  DWARF Version:               %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "uVar11 = local_34;" (assignment_expression "uVar11 = local_34" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Prologue Length:             %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Prologue Length:             %d\n",5)" identifier (argument_list "(0,"  Prologue Length:             %d\n",5)" ( number_literal , (string_literal ""  Prologue Length:             %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" identifier (argument_list "(0,"  Minimum Instruction Length:  %d\n",5)" ( number_literal , (string_literal ""  Minimum Instruction Length:  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (if_statement "if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" if (parenthesized_expression "(3 < (ushort)local_38)" ( (binary_expression "3 < (ushort)local_38" number_literal < (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier)) )) (compound_statement "{\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" { (expression_statement "uVar19 = local_2c >> 8;" (assignment_expression "uVar19 = local_2c >> 8" identifier = (binary_expression "local_2c >> 8" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" identifier (argument_list "(0,"  Maximum Ops per Instruction: %d\n",5)" ( number_literal , (string_literal ""  Maximum Ops per Instruction: %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) })) (expression_statement "uVar19 = local_2c >> 0x10;" (assignment_expression "uVar19 = local_2c >> 0x10" identifier = (binary_expression "local_2c >> 0x10" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" identifier (argument_list "(0,"  Initial value of \'is_stmt\':  %d\n",5)" ( number_literal , (string_literal ""  Initial value of \'is_stmt\':  %d\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) (expression_statement "iVar14 = local_28;" (assignment_expression "iVar14 = local_28" identifier = identifier) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Base:                   %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Base:                   %d\n",5)" identifier (argument_list "(0,"  Line Base:                   %d\n",5)" ( number_literal , (string_literal ""  Line Base:                   %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,iVar14);" (call_expression "printf(pcVar6,iVar14)" identifier (argument_list "(pcVar6,iVar14)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 & 0xff;" (assignment_expression "uVar19 = local_24 & 0xff" identifier = (binary_expression "local_24 & 0xff" identifier & number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Line Range:                  %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Line Range:                  %d\n",5)" identifier (argument_list "(0,"  Line Range:                  %d\n",5)" ( number_literal , (string_literal ""  Line Range:                  %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 >> 8;" (assignment_expression "uVar19 = local_24 >> 8" identifier = (binary_expression "local_24 >> 8" identifier >> number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Opcode Base:                 %d\n",5)" identifier (argument_list "(0,"  Opcode Base:                 %d\n",5)" ( number_literal , (string_literal ""  Opcode Base:                 %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" identifier (argument_list "(pcVar6,uVar19 & 0xff)" ( identifier , (binary_expression "uVar19 & 0xff" identifier & number_literal) ))) ;) (if_statement "if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" if (parenthesized_expression "((byte)local_24 == '\0')" ( (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" { (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" identifier = (call_expression "CONCAT31(local_24._1_3_,1)" identifier (argument_list "(local_24._1_3_,1)" ( (field_expression "local_24._1_3_" identifier . field_identifier) , number_literal )))) ;) })) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (if_statement "if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" if (parenthesized_expression "(pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94))" ( (binary_expression "pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)" identifier <= (cast_expression "(byte *)((local_24 >> 8 & 0xff) + local_94)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((local_24 >> 8 & 0xff) + local_94)" ( (binary_expression "(local_24 >> 8 & 0xff) + local_94" (parenthesized_expression "(local_24 >> 8 & 0xff)" ( (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal) )) + identifier) )))) )) (compound_statement "{\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" { (expression_statement "pcVar6 = "Line Base extends beyond end of section\n";" (assignment_expression "pcVar6 = "Line Base extends beyond end of section\n"" identifier = (string_literal ""Line Base extends beyond end of section\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005d6a3;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n Opcodes:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n Opcodes:\n",5)" identifier (argument_list "(0,"\n Opcodes:\n",5)" ( number_literal , (string_literal ""\n Opcodes:\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "uVar19 = (uint)local_24._1_1_;" (assignment_expression "uVar19 = (uint)local_24._1_1_" identifier = (cast_expression "(uint)local_24._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) ;) (if_statement "if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" if (parenthesized_expression "(1 < local_24._1_1_)" ( (binary_expression "1 < local_24._1_1_" number_literal < (field_expression "local_24._1_1_" identifier . field_identifier)) )) (compound_statement "{\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (do_statement "do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);" do (compound_statement "{\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          }" { (expression_statement "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14)" identifier = (binary_expression "(uint)*(byte *)(local_94 + -1 + iVar14)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_94 + -1 + iVar14)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + iVar14)" ( (binary_expression "local_94 + -1 + iVar14" (binary_expression "local_94 + -1" identifier + number_literal) + identifier) ))))) ;) (expression_statement "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);" (assignment_expression "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" identifier = (cast_expression "(char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" identifier (argument_list "(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" ( number_literal , (string_literal ""  Opcode %d has %d arg\n"" " string_content escape_sequence ") , (string_literal ""  Opcode %d has %d args\n"" " string_content escape_sequence ") , identifier , number_literal ))))) ;) (expression_statement "iVar10 = iVar14 + 1;" (assignment_expression "iVar10 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "printf(pcVar6,iVar14,uVar19);" (call_expression "printf(pcVar6,iVar14,uVar19)" identifier (argument_list "(pcVar6,iVar14,uVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" identifier = (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "iVar14 = iVar10;" (assignment_expression "iVar14 = iVar10" identifier = identifier) ;) }) while (parenthesized_expression "(iVar10 < (int)uVar19)" ( (binary_expression "iVar10 < (int)uVar19" identifier < (cast_expression "(int)uVar19" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "pbVar20 = (byte *)(local_94 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_94 + -1 + uVar19)" identifier = (cast_expression "(byte *)(local_94 + -1 + uVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + uVar19)" ( (binary_expression "local_94 + -1 + uVar19" (binary_expression "local_94 + -1" identifier + number_literal) + identifier) )))) ;) (if_statement "if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" if (parenthesized_expression "((ushort)local_38 < 5)" ( (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier) < number_literal) )) (compound_statement "{\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }" { (if_statement "if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" if (parenthesized_expression "(*pbVar20 == 0)" ( (binary_expression "*pbVar20 == 0" (pointer_expression "*pbVar20" * identifier) == number_literal) )) (compound_statement "{\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }" { (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table is empty.\n",5)" identifier (argument_list "(0,"\n The Directory Table is empty.\n",5)" ( number_literal , (string_literal ""\n The Directory Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if (pbVar20[1] == 0) goto LAB_0005c013;" if (parenthesized_expression "(pbVar20[1] == 0)" ( (binary_expression "pbVar20[1] == 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_0005c013;" goto statement_identifier ;)) (labeled_statement "LAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" identifier (argument_list "(0,"\n The File Name Table (offset 0x%lx):\n",5)" ( number_literal , (string_literal ""\n The File Name Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" ( identifier , (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (expression_statement "pbVar16 = (byte *)0x5;" (assignment_expression "pbVar16 = (byte *)0x5" identifier = (cast_expression "(byte *)0x5" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" identifier (argument_list "(0,"  Entry\tDir\tTime\tSize\tName\n",5)" ( number_literal , (string_literal ""  Entry\tDir\tTime\tSize\tName\n"" " string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (if_statement "if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" if (parenthesized_expression "((local_b4 < pbVar5) && (pbVar20[1] != 0))" ( (binary_expression "(local_b4 < pbVar5) && (pbVar20[1] != 0)" (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(pbVar20[1] != 0)" ( (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" { (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (while_statement "while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" { (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" identifier = (binary_expression "DAT_000b9d24 + 1" identifier + number_literal)) ;) (expression_statement "printf("  %d\t",DAT_000b9d24,pbVar16);" (call_expression "printf("  %d\t",DAT_000b9d24,pbVar16)" identifier (argument_list "("  %d\t",DAT_000b9d24,pbVar16)" ( (string_literal ""  %d\t"" " string_content escape_sequence ") , identifier , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_b4 = pbVar20 + sVar8 + 1;" (assignment_expression "local_b4 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" identifier (argument_list "("%s\t",uVar11)" ( (string_literal ""%s\t"" " string_content escape_sequence ") , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" identifier = identifier) ;) (expression_statement "printf("%.*s\n",(int)pbVar5 - (int)pbVar20);" (call_expression "printf("%.*s\n",(int)pbVar5 - (int)pbVar20)" identifier (argument_list "("%.*s\n",(int)pbVar5 - (int)pbVar20)" ( (string_literal ""%.*s\n"" " string_content escape_sequence ") , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (if_statement "if (pbVar5 == local_b4) break;" if (parenthesized_expression "(pbVar5 == local_b4)" ( (binary_expression "pbVar5 == local_b4" identifier == identifier) )) (break_statement "break;" break ;)) (if_statement "if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;" if (parenthesized_expression "((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0))" ( (binary_expression "(pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)" (parenthesized_expression "(pbVar5 <= local_b4)" ( (binary_expression "pbVar5 <= local_b4" identifier <= identifier) )) || (parenthesized_expression "(pbVar20 = local_b4, *local_b4 == 0)" ( (comma_expression "pbVar20 = local_b4, *local_b4 == 0" (assignment_expression "pbVar20 = local_b4" identifier = identifier) , (binary_expression "*local_b4 == 0" (pointer_expression "*local_b4" * identifier) == number_literal)) ))) )) (goto_statement "goto LAB_0005c031;" goto statement_identifier ;)) })) (expression_statement "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name table entry\n",5)" identifier (argument_list "(0,"Corrupt file name table entry\n",5)" ( number_literal , (string_literal ""Corrupt file name table entry\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_b4 = pbVar5;" (assignment_expression "local_b4 = pbVar5" identifier = identifier) ;) })) }) (else_clause "else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" else (compound_statement "{\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" { (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" identifier (argument_list "(0,"\n The Directory Table (offset 0x%lx):\n",5)" ( number_literal , (string_literal ""\n The Directory Table (offset 0x%lx):\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,(int)pbVar20 - (int)local_bc);" (call_expression "printf(pcVar6,(int)pbVar20 - (int)local_bc)" identifier (argument_list "(pcVar6,(int)pbVar20 - (int)local_bc)" ( identifier , (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ;) (if_statement "if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" if (parenthesized_expression "((pbVar20 < pbVar5) && (*pbVar20 != 0))" ( (binary_expression "(pbVar20 < pbVar5) && (*pbVar20 != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) ))) )) (compound_statement "{\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);" do (compound_statement "{\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);" (call_expression "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" identifier (argument_list "("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" ( (string_literal ""  %d\t%.*s\n"" " string_content escape_sequence string_content escape_sequence ") , identifier , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) , identifier ))) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (if_statement "if (pbVar5 <= pbVar20) break;" if (parenthesized_expression "(pbVar5 <= pbVar20)" ( (binary_expression "pbVar5 <= pbVar20" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) )) ;) })) (if_statement "if (pbVar5 + -1 <= pbVar20) break;" if (parenthesized_expression "(pbVar5 + -1 <= pbVar20)" ( (binary_expression "pbVar5 + -1 <= pbVar20" (binary_expression "pbVar5 + -1" identifier + number_literal) <= identifier) )) (break_statement "break;" break ;)) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar20[1] != 0) goto LAB_0005d01c;" if (parenthesized_expression "(pbVar20[1] != 0)" ( (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" identifier [ number_literal ]) != number_literal) )) (goto_statement "goto LAB_0005d01c;" goto statement_identifier ;)) (labeled_statement "LAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n The File Name Table is empty.\n",5)" identifier (argument_list "(0,"\n The File Name Table is empty.\n",5)" ( number_literal , (string_literal ""\n The File Name Table is empty.\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) }))) (labeled_statement "LAB_0005c031:\n          local_b4 = local_b4 + 1;" statement_identifier : (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" identifier = (binary_expression "local_b4 + 1" identifier + number_literal)) ;)) }) (else_clause "else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" else (compound_statement "{\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" { (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" identifier (argument_list "()" ( ))) ;) (expression_statement "uVar11 = dcgettext(0,"Directory",5);" (assignment_expression "uVar11 = dcgettext(0,"Directory",5)" identifier = (call_expression "dcgettext(0,"Directory",5)" identifier (argument_list "(0,"Directory",5)" ( number_literal , (string_literal ""Directory"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0005a380(&local_38,local_20,param_1,uVar11);" (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier (argument_list "(&local_38,local_20,param_1,uVar11)" ( (pointer_expression "&local_38" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uVar11 = dcgettext(0,"File name",5);" (assignment_expression "uVar11 = dcgettext(0,"File name",5)" identifier = (call_expression "dcgettext(0,"File name",5)" identifier (argument_list "(0,"File name",5)" ( number_literal , (string_literal ""File name"" " string_content ") , number_literal )))) ;) (expression_statement "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);" (assignment_expression "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier = (cast_expression "(byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" identifier (argument_list "(&local_38,local_20,param_1,uVar11)" ( (pointer_expression "&local_38" & identifier) , identifier , identifier , identifier ))))) ;) }))) (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "DAT_000b7620 = local_40;" (assignment_expression "DAT_000b7620 = local_40" identifier = identifier) ;) (expression_statement "DAT_000b7624 = local_3c;" (assignment_expression "DAT_000b7624 = local_3c" identifier = identifier) ;) (expression_statement "DAT_000b7628 = local_38;" (assignment_expression "DAT_000b7628 = local_38" identifier = identifier) ;) (expression_statement "DAT_000b762c = local_34;" (assignment_expression "DAT_000b762c = local_34" identifier = identifier) ;) (expression_statement "DAT_000b7630 = local_30;" (assignment_expression "DAT_000b7630 = local_30" identifier = identifier) ;) (expression_statement "DAT_000b7634 = local_2c;" (assignment_expression "DAT_000b7634 = local_2c" identifier = identifier) ;) (expression_statement "DAT_000b7638 = local_28;" (assignment_expression "DAT_000b7638 = local_28" identifier = identifier) ;) (expression_statement "DAT_000b763c = local_24;" (assignment_expression "DAT_000b763c = local_24" identifier = identifier) ;) (expression_statement "DAT_000b7640 = local_20[0];" (assignment_expression "DAT_000b7640 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) }))) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" identifier = identifier) ;) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" if (parenthesized_expression "(local_b4 < local_48)" ( (binary_expression "local_b4 < local_48" identifier < identifier) )) (compound_statement "{\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" { (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5)" identifier = (cast_expression "(char *)dcgettext(0," Line Number Statements:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," Line Number Statements:\n",5)" identifier (argument_list "(0," Line Number Statements:\n",5)" ( number_literal , (string_literal "" Line Number Statements:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (if_statement "if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" if (parenthesized_expression "(local_b4 < local_48)" ( (binary_expression "local_b4 < local_48" identifier < identifier) )) (compound_statement "{\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" { (labeled_statement "LAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" statement_identifier : (expression_statement "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" (call_expression "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" identifier (argument_list "("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" ( (string_literal ""  [0x%08lx]"" " string_content ") , (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_bc" ( (type_descriptor "int" primitive_type) ) identifier)) , identifier ))) ;)) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" identifier = identifier) ;) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" identifier = identifier) ;) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" identifier = (binary_expression "pbVar20 + 1" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) (if_statement "if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" if (parenthesized_expression "(local_24._1_1_ <= bVar13)" ( (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" identifier . field_identifier) <= identifier) )) (compound_statement "{\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" { (expression_statement "bVar13 = bVar13 - local_24._1_1_;" (assignment_expression "bVar13 = bVar13 - local_24._1_1_" identifier = (binary_expression "bVar13 - local_24._1_1_" identifier - (field_expression "local_24._1_1_" identifier . field_identifier))) ;) (expression_statement "uVar7 = local_2c & 0xff;" (assignment_expression "uVar7 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "uVar18 = (uint)(bVar13 / (byte)local_24);" (assignment_expression "uVar18 = (uint)(bVar13 / (byte)local_24)" identifier = (call_expression "(uint)(bVar13 / (byte)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar13 / (byte)local_24)" ( (binary_expression "bVar13 / (byte)local_24" identifier / (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) ;) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }" { (expression_statement "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;" (assignment_expression "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7" identifier = (binary_expression "(ulonglong)uVar18 * (ulonglong)uVar7" (cast_expression "(ulonglong)uVar18" ( (type_descriptor "ulonglong" type_identifier) ) identifier) * (cast_expression "(ulonglong)uVar7" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier + (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier ))))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (if_statement "if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "((int)lVar28 != 0)" ( (binary_expression "(int)lVar28 != 0" (cast_expression "(int)lVar28" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";" (assignment_expression "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s"" identifier = (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ")) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" identifier (argument_list "(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" " string_content ") , number_literal ))))) ;) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" identifier = (pointer_expression "&DAT_0007bc55" & identifier)) ;) }) (else_clause "else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" else (compound_statement "{\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" { (expression_statement "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);" (assignment_expression "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" identifier = (call_expression "FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" identifier (argument_list "((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" ( (binary_expression "(byte)DAT_000b9d20 + uVar18" (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier) + identifier) , (call_expression "CARRY4((uint)(byte)DAT_000b9d20,uVar18)" identifier (argument_list "((uint)(byte)DAT_000b9d20,uVar18)" ( (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) , identifier ))) , (field_expression "local_2c._1_1_" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar32 = local_54[0];" (assignment_expression "puVar32 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = iVar10 * uVar7;" (assignment_expression "uVar7 = iVar10 * uVar7" identifier = (binary_expression "iVar10 * uVar7" identifier * identifier)) ;) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" identifier = (binary_expression "uVar7 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier = (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar7,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar7,uVar19)" identifier (argument_list "(uVar7,uVar19)" ( identifier , identifier )))))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (cast_expression "(char)local_54[0]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_54[0]" identifier [ number_literal ])) )))) ;) (if_statement "if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" identifier (argument_list "(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" ( number_literal , (string_literal ""  Special opcode %d: advance Address by %s to 0x%s[%d]%s"" " string_content ") , number_literal ))))) ;) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ identifier = (string_literal """" " ")) ;) }))) (expression_statement "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);" (call_expression "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" identifier (argument_list "(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" ( identifier , (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier , identifier , identifier , identifier ))) ;) (expression_statement "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;" (assignment_expression "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" identifier = (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24)" identifier + (call_expression "(uint)(bVar13 % (byte)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar13 % (byte)local_24)" ( (binary_expression "bVar13 % (byte)local_24" identifier % (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) )))) + identifier)) ;) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" identifier = identifier) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5)" identifier = (cast_expression "(char *)dcgettext(0," and Line by %s to %d",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," and Line by %s to %d",5)" identifier (argument_list "(0," and Line by %s to %d",5)" ( number_literal , (string_literal "" and Line by %s to %d"" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9d08 == 0) goto LAB_0005bb80;" if (parenthesized_expression "(DAT_000b9d08 == 0)" ( (binary_expression "DAT_000b9d08 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005bb80;" goto statement_identifier ;)) (labeled_statement "code_r0x0005b679:\n            iVar14 = DAT_000b9d08;" statement_identifier : (expression_statement "iVar14 = DAT_000b9d08;" (assignment_expression "iVar14 = DAT_000b9d08" identifier = identifier) ;)) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0," (view %u)\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0," (view %u)\n")" identifier = (cast_expression "(char *)dcgettext(0," (view %u)\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," (view %u)\n")" identifier (argument_list "(0," (view %u)\n")" ( number_literal , (string_literal "" (view %u)\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,iVar14,puVar32);" (call_expression "printf(pcVar6,iVar14,puVar32)" identifier (argument_list "(pcVar6,iVar14,puVar32)" ( identifier , identifier , identifier ))) ;) (labeled_statement "LAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;" statement_identifier : (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" identifier = (binary_expression "DAT_000b9d08 + 1" identifier + number_literal)) ;)) (goto_statement "goto LAB_0005b6a1;" goto statement_identifier ;) })) (switch_statement "switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" switch (parenthesized_expression "(bVar13)" ( identifier )) (compound_statement "{\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" { (case_statement "case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;" case number_literal : (expression_statement "iVar14 = FUN_000523d0();" (assignment_expression "iVar14 = FUN_000523d0()" identifier = (call_expression "FUN_000523d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_b4 = local_b4 + iVar14;" (assignment_expression "local_b4 = local_b4 + iVar14" identifier = (binary_expression "local_b4 + iVar14" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;" case number_literal : (expression_statement "puVar31 = &UNK_0009393c;" (assignment_expression "puVar31 = &UNK_0009393c" identifier = (pointer_expression "&UNK_0009393c" & identifier)) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,&UNK_0009393c);" (assignment_expression "pcVar6 = (char *)dcgettext(0,&UNK_0009393c)" identifier = (cast_expression "(char *)dcgettext(0,&UNK_0009393c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,&UNK_0009393c)" identifier (argument_list "(0,&UNK_0009393c)" ( number_literal , (pointer_expression "&UNK_0009393c" & identifier) ))))) ;) (expression_statement "printf(pcVar6,puVar31,puVar32);" (call_expression "printf(pcVar6,puVar31,puVar32)" identifier (argument_list "(pcVar6,puVar31,puVar32)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9d08 != 0) goto code_r0x0005b679;" if (parenthesized_expression "(DAT_000b9d08 != 0)" ( (binary_expression "DAT_000b9d08 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x0005b679;" goto statement_identifier ;)) (labeled_statement "LAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (goto_statement "goto LAB_0005b698;" goto statement_identifier ;)) (case_statement "case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;" case number_literal : (expression_statement "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" identifier = identifier) ;) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" identifier = identifier) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" { (expression_statement "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);" (assignment_expression "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" identifier = (binary_expression "(uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" (parenthesized_expression "(uVar27 & 0xffffffff)" ( (binary_expression "uVar27 & 0xffffffff" identifier & number_literal) )) * (call_expression "(ulonglong)(local_2c & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) ))))) ;) (expression_statement "uVar19 = (uint)lVar28;" (assignment_expression "uVar19 = (uint)lVar28" identifier = (cast_expression "(uint)lVar28" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" identifier = (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff)" (cast_expression "(int)(uVar27 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar27 >> 0x20)" ( (binary_expression "uVar27 >> 0x20" identifier >> number_literal) ))) * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) ))) + (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))))) ;) (expression_statement "bVar21 = CARRY4(DAT_000b9d00,uVar19);" (assignment_expression "bVar21 = CARRY4(DAT_000b9d00,uVar19)" identifier = (call_expression "CARRY4(DAT_000b9d00,uVar19)" identifier (argument_list "(DAT_000b9d00,uVar19)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d00 = DAT_000b9d00 + uVar19;" (assignment_expression "DAT_000b9d00 = DAT_000b9d00 + uVar19" identifier = (binary_expression "DAT_000b9d00 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21" identifier = (binary_expression "DAT_000b9d04 + iVar14 + (uint)bVar21" (binary_expression "DAT_000b9d04 + iVar14" identifier + identifier) + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(iVar14 != 0 || uVar19 != 0)" ( (binary_expression "iVar14 != 0 || uVar19 != 0" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "uVar19 != 0" identifier != number_literal)) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Advance PC by %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b8b1;" goto statement_identifier ;) })) (expression_statement "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);" (assignment_expression "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" identifier = (call_expression "FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" identifier (argument_list "(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" ( (binary_expression "uVar27 + (byte)DAT_000b9d20" identifier + (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) , (field_expression "local_2c._1_1_" identifier . field_identifier) , number_literal , identifier )))) ;) (expression_statement "puVar3 = local_54[0];" (assignment_expression "puVar3 = local_54[0]" identifier = (subscript_expression "local_54[0]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = iVar10 * (local_2c & 0xff);" (assignment_expression "uVar7 = iVar10 * (local_2c & 0xff)" identifier = (binary_expression "iVar10 * (local_2c & 0xff)" identifier * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" identifier = (binary_expression "uVar7 + uVar19" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier = (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" identifier + (cast_expression "(uint)CARRY4(uVar7,uVar19)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar7,uVar19)" identifier (argument_list "(uVar7,uVar19)" ( identifier , identifier )))))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" identifier (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (cast_expression "(char)local_54[0]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "local_54[0]" identifier [ number_literal ])) )))) ;) (if_statement "if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" identifier (argument_list "(0,"  Advance PC by %s to 0x%s[%d]%s\n")" ( number_literal , (string_literal ""  Advance PC by %s to 0x%s[%d]%s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" identifier (argument_list "(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" ( identifier , identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;" case number_literal : (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,1,pbVar5)" identifier (argument_list "(local_b4,&local_44,1,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "puVar32 = DAT_000b9d10 + iVar14;" (assignment_expression "puVar32 = DAT_000b9d10 + iVar14" identifier = (binary_expression "DAT_000b9d10 + iVar14" identifier + identifier)) ;) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" identifier = identifier) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance Line by %s to %d\n",5)" identifier (argument_list "(0,"  Advance Line by %s to %d\n",5)" ( number_literal , (string_literal ""  Advance Line by %s to %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;" case number_literal : (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" identifier (argument_list "(0,"  Set File Name to entry %s in the File Name Table\n")" ( number_literal , (string_literal ""  Set File Name to entry %s in the File Name Table\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;" case number_literal : (expression_statement "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set column to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set column to %s\n")" identifier (argument_list "(0,"  Set column to %s\n")" ( number_literal , (string_literal ""  Set column to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar12,puVar32);" (call_expression "printf(pcVar6,uVar12,puVar32)" identifier (argument_list "(pcVar6,uVar12,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d14 = uVar11;" (assignment_expression "DAT_000b9d14 = uVar11" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;" case number_literal : (expression_statement "bVar21 = DAT_000b9d18 == 0;" (assignment_expression "bVar21 = DAT_000b9d18 == 0" identifier = (binary_expression "DAT_000b9d18 == 0" identifier == number_literal)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set is_stmt to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set is_stmt to %s\n")" identifier (argument_list "(0,"  Set is_stmt to %s\n")" ( number_literal , (string_literal ""  Set is_stmt to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d18 = (uint)bVar21;" (assignment_expression "DAT_000b9d18 = (uint)bVar21" identifier = (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;" case number_literal : (expression_statement "pcVar6 = "  Set basic block\n";" (assignment_expression "pcVar6 = "  Set basic block\n"" identifier = (string_literal ""  Set basic block\n"" " string_content escape_sequence ")) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Set basic block\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Set basic block\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set basic block\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set basic block\n")" identifier (argument_list "(0,"  Set basic block\n")" ( number_literal , (string_literal ""  Set basic block\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" identifier (argument_list "(pcVar9,pcVar6,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;" case number_literal : (if_statement "if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" if (parenthesized_expression "(local_2c._1_1_ == '\0')" ( (binary_expression "local_2c._1_1_ == '\0'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" { (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" identifier = (cast_expression "(code *)invalidInstructionException()" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "invalidInstructionException()" identifier (argument_list "()" ( ))))) ;) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" ( (pointer_expression "*pcVar1" * identifier) )) (argument_list "()" ( ))) ;) })) (expression_statement "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);" (assignment_expression "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" identifier = (binary_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" (cast_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (binary_expression "(ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)" (cast_expression "(ulonglong)(byte)~local_24._1_1_" ( (type_descriptor "ulonglong" type_identifier) ) (cast_expression "(byte)~local_24._1_1_" ( (type_descriptor "byte" type_identifier) ) (unary_expression "~local_24._1_1_" ~ (field_expression "local_24._1_1_" identifier . field_identifier)))) / (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(local_24 & 0xff)" ( (binary_expression "local_24 & 0xff" identifier & number_literal) )))) ))) * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "bVar21 = CARRY4(uVar19,DAT_000b9d00);" (assignment_expression "bVar21 = CARRY4(uVar19,DAT_000b9d00)" identifier = (call_expression "CARRY4(uVar19,DAT_000b9d00)" identifier (argument_list "(uVar19,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d00 = uVar19 + DAT_000b9d00;" (assignment_expression "DAT_000b9d00 = uVar19 + DAT_000b9d00" identifier = (binary_expression "uVar19 + DAT_000b9d00" identifier + identifier)) ;) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21" identifier = (binary_expression "DAT_000b9d04 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n"" identifier = (string_literal ""  Advance PC by constant %s to 0x%s%s\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;" statement_identifier : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6)" identifier (argument_list "(0,pcVar6)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55)" identifier (argument_list "(pcVar6,uVar12,uVar11,&DAT_0007bc55)" ( identifier , identifier , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;" case number_literal : (if_statement "if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" if (parenthesized_expression "(pbVar20 + 3 < pbVar5)" ( (binary_expression "pbVar20 + 3 < pbVar5" (binary_expression "pbVar20 + 3" identifier + number_literal) < identifier) )) (compound_statement "{\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) (labeled_statement "code_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" statement_identifier : (expression_statement "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" (assignment_expression "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(local_b4,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(local_b4,iVar14)" ( identifier , identifier )))) ;)) }) (else_clause "else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" else (compound_statement "{\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" { (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (if_statement "if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;" if (parenthesized_expression "((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))" ( (binary_expression "(local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)local_b4" identifier = (binary_expression "(int)pbVar5 - (int)local_b4" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier))) , (comma_expression "lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "lVar28 = 0" identifier = number_literal) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal))) ))) )) (goto_statement "goto code_r0x0005d4cd;" goto statement_identifier ;)) }))) (expression_statement "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier + (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier ))))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar28;" (assignment_expression "DAT_000b9d00 = (uint)lVar28" identifier = (cast_expression "(uint)lVar28" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "puVar32 = (undefined1 *)FUN_0004cb50(0);" (assignment_expression "puVar32 = (undefined1 *)FUN_0004cb50(0)" identifier = (cast_expression "(undefined1 *)FUN_0004cb50(0)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal ))))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" identifier (argument_list "(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" ( number_literal , (string_literal ""  Advance PC by fixed size amount %s to 0x%s\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "local_b4 = pbVar20 + 3;" (assignment_expression "local_b4 = pbVar20 + 3" identifier = (binary_expression "pbVar20 + 3" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;" case number_literal : (expression_statement "pcVar6 = "  Set prologue_end to true\n";" (assignment_expression "pcVar6 = "  Set prologue_end to true\n"" identifier = (string_literal ""  Set prologue_end to true\n"" " string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b70b;" goto statement_identifier ;)) (case_statement "case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;" case number_literal : (expression_statement "pcVar6 = "  Set epilogue_begin to true\n";" (assignment_expression "pcVar6 = "  Set epilogue_begin to true\n"" identifier = (string_literal ""  Set epilogue_begin to true\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;" statement_identifier : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar6)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6)" identifier (argument_list "(0,pcVar6)" ( number_literal , identifier ))))) ;) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" identifier (argument_list "(pcVar9,pcVar6,puVar32)" ( identifier , identifier , identifier ))) ;) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" if (parenthesized_expression "(local_48 <= local_b4)" ( (binary_expression "local_48 <= local_b4" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;)) (case_statement "case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;" case number_literal : (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n")" identifier = (cast_expression "(char *)dcgettext(0,"  Set ISA to %s\n")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Set ISA to %s\n")" identifier (argument_list "(0,"  Set ISA to %s\n")" ( number_literal , (string_literal ""  Set ISA to %s\n"" " string_content escape_sequence ") ))))) ;) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" identifier (argument_list "(pcVar6,uVar11,puVar32)" ( identifier , identifier , identifier ))) ;) (break_statement "break;" break ;)) (case_statement "default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);" default : (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" identifier = (cast_expression "(undefined1 *)0x5" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ")" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ")" identifier (argument_list "(0,"  Unknown opcode %d with operands: ")" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") ))))) ;) (expression_statement "printf(pcVar6,(uint)bVar13,puVar32);" (call_expression "printf(pcVar6,(uint)bVar13,puVar32)" identifier (argument_list "(pcVar6,(uint)bVar13,puVar32)" ( identifier , (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier) , identifier ))) ;) (if_statement "if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" if (parenthesized_expression "((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0))" ( (binary_expression "(local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" (parenthesized_expression "(local_94 != 0)" ( (binary_expression "local_94 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" ( (comma_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13)" identifier = (binary_expression "(uint)*(byte *)(local_94 + -1 + (uint)bVar13)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_94 + -1 + (uint)bVar13)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_94 + -1 + (uint)bVar13)" ( (binary_expression "local_94 + -1 + (uint)bVar13" (binary_expression "local_94 + -1" identifier + number_literal) + (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) ))))) , (binary_expression "uVar19 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" { (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" for ( ; (binary_expression "uVar19 != 1" identifier != number_literal) ; (assignment_expression "uVar19 = uVar19 - 1" identifier = (binary_expression "uVar19 - 1" identifier - number_literal)) ) (compound_statement "{\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" { (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) })) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" identifier (argument_list "(local_b4,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" identifier = (pointer_expression "&DAT_0007bc55" & identifier)) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" identifier = (binary_expression "local_b4 + local_44" identifier + identifier)) ;) })) (expression_statement "putc(10,*(FILE **)puVar2);" (call_expression "putc(10,*(FILE **)puVar2)" identifier (argument_list "(10,*(FILE **)puVar2)" ( number_literal , (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) })) (labeled_statement "LAB_0005b6a1:\n          pbVar20 = local_b4;" statement_identifier : (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" identifier = identifier) ;)) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" if (parenthesized_expression "(local_48 <= local_b4)" ( (binary_expression "local_48 <= local_b4" identifier <= identifier) )) (goto_statement "goto LAB_0005b730;" goto statement_identifier ;)) (goto_statement "goto LAB_0005b6b6;" goto statement_identifier ;) })) (labeled_statement "LAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);" statement_identifier : (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" identifier (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" ( number_literal , (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" * (cast_expression "(FILE **)PTR_stdout_000b3fd8" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;)) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" identifier = (binary_expression "pbVar5 < local_b4" identifier < identifier)) ;) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" identifier = (binary_expression "pbVar5 == local_b4" identifier == identifier)) ;) (if_statement "if (pbVar5 <= local_b4) break;" if (parenthesized_expression "(pbVar5 <= local_b4)" ( (binary_expression "pbVar5 <= local_b4" identifier <= identifier) )) (break_statement "break;" break ;)) (goto_statement "goto LAB_0005b368;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5)" identifier = (cast_expression "(char *)dcgettext(0," No Line Number Statements.\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0," No Line Number Statements.\n",5)" identifier (argument_list "(0," No Line Number Statements.\n",5)" ( number_literal , (string_literal "" No Line Number Statements.\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" identifier = (binary_expression "pbVar5 < local_b4" identifier < identifier)) ;) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" identifier = (binary_expression "pbVar5 == local_b4" identifier == identifier)) ;) }) while (parenthesized_expression "(local_b4 < pbVar5)" ( (binary_expression "local_b4 < pbVar5" identifier < identifier) )) ;)) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" identifier = number_literal) ;) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" identifier = (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" if (parenthesized_expression "(!(bool)uVar25)" ( (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier)) )) (compound_statement "{\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" { (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" statement_identifier : (do_statement "do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" do (compound_statement "{\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      }" { (expression_statement "local_6c = ".debug_line.";" (assignment_expression "local_6c = ".debug_line."" identifier = (string_literal "".debug_line."" " string_content ")) ;) (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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) ))))) ;) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);" do (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "uVar23 = *pbVar20 < (byte)*local_6c;" (assignment_expression "uVar23 = *pbVar20 < (byte)*local_6c" identifier = (binary_expression "*pbVar20 < (byte)*local_6c" (pointer_expression "*pbVar20" * identifier) < (binary_expression "(byte)*local_6c" (parenthesized_expression "(byte)" ( identifier )) * identifier))) ;) (expression_statement "uVar25 = *pbVar20 == *local_6c;" (assignment_expression "uVar25 = *pbVar20 == *local_6c" identifier = (binary_expression "*pbVar20 == *local_6c" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*local_6c" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);" (assignment_expression "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" identifier = (cast_expression "(char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((byte *)local_6c + (uint)bVar26 * -2 + 1)" ( (binary_expression "(byte *)local_6c + (uint)bVar26 * -2 + 1" (binary_expression "(byte *)local_6c + (uint)bVar26 * -2" (cast_expression "(byte *)local_6c" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal) )))) ;) }) while (parenthesized_expression "((bool)uVar25)" ( (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier) )) ;) (expression_statement "bVar21 = false;" (assignment_expression "bVar21 = false" identifier = false) ;) (expression_statement "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;" (assignment_expression "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" identifier = (binary_expression "(!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" (parenthesized_expression "(!(bool)uVar23 && !(bool)uVar25)" ( (binary_expression "!(bool)uVar23 && !(bool)uVar25" (unary_expression "!(bool)uVar23" ! (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier)) && (unary_expression "!(bool)uVar25" ! (cast_expression "(bool)uVar25" ( (type_descriptor "bool" primitive_type) ) identifier))) )) == (cast_expression "(bool)uVar23" ( (type_descriptor "bool" primitive_type) ) identifier))) ;) (if_statement "if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" if (parenthesized_expression "(bVar24)" ( identifier )) (compound_statement "{\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }" { (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" identifier = number_literal) ;) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" identifier = (cast_expression "(byte *)".debug_line.dwo"" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal "".debug_line.dwo"" " string_content "))) ;) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);" do (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          }" { (if_statement "if (iVar14 == 0) break;" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" identifier = (binary_expression "iVar14 + -1" identifier + number_literal)) ;) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" identifier = (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" * identifier) < (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" identifier = (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" * identifier) == (pointer_expression "*pbVar16" * identifier))) ;) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" identifier = (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" identifier + (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar24)" ( identifier )) ;) (if_statement "if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;" if (parenthesized_expression "((!bVar21 && !bVar24) == bVar21)" ( (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" ( (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" ! identifier) && (unary_expression "!bVar24" ! identifier)) )) == identifier) )) (goto_statement "goto LAB_0005c150;" goto statement_identifier ;)) (expression_statement "local_20[0] = DAT_000b7600;" (assignment_expression "local_20[0] = DAT_000b7600" (subscript_expression "local_20[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "local_40 = DAT_000b75e0;" (assignment_expression "local_40 = DAT_000b75e0" identifier = identifier) ;) (expression_statement "local_3c = DAT_000b75e4;" (assignment_expression "local_3c = DAT_000b75e4" identifier = identifier) ;) (expression_statement "local_38 = DAT_000b75e8;" (assignment_expression "local_38 = DAT_000b75e8" identifier = identifier) ;) (expression_statement "local_34 = DAT_000b75ec;" (assignment_expression "local_34 = DAT_000b75ec" identifier = identifier) ;) (expression_statement "local_30 = DAT_000b75f0;" (assignment_expression "local_30 = DAT_000b75f0" identifier = identifier) ;) (expression_statement "local_2c = DAT_000b75f4;" (assignment_expression "local_2c = DAT_000b75f4" identifier = identifier) ;) (expression_statement "local_28 = DAT_000b75f8;" (assignment_expression "local_28 = DAT_000b75f8" identifier = identifier) ;) (expression_statement "local_24 = DAT_000b75fc;" (assignment_expression "local_24 = DAT_000b75fc" identifier = identifier) ;) (if_statement "if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" if (parenthesized_expression "((char)DAT_000b75fc == '\0')" ( (binary_expression "(char)DAT_000b75fc == '\0'" (cast_expression "(char)DAT_000b75fc" ( (type_descriptor "char" primitive_type) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" { (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (expression_statement "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);" (assignment_expression "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" identifier = (call_expression "dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" identifier (argument_list "(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" ( number_literal , (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (expression_statement "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff" identifier = (binary_expression "DAT_000b75f4 >> 0x10 & 0xff" (binary_expression "DAT_000b75f4 >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" identifier = number_literal) ;) (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 "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" identifier = number_literal) ;) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" identifier = identifier) ;) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" identifier = number_literal) ;) (if_statement "if (local_bc < pbVar5) goto LAB_0005ad11;" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" else (compound_statement "{\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" { (labeled_statement "LAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);" statement_identifier : (expression_statement "local_90 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_90 = FUN_0004d730(&local_40,&local_48)" identifier = (call_expression "FUN_0004d730(&local_40,&local_48)" identifier (argument_list "(&local_40,&local_48)" ( (pointer_expression "&local_40" & identifier) , (pointer_expression "&local_48" & identifier) )))) ;)) (if_statement "if (local_90 == 0) {\n            return 0;\n          }" if (parenthesized_expression "(local_90 == 0)" ( (binary_expression "local_90 == 0" identifier == number_literal) )) (compound_statement "{\n            return 0;\n          }" { (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" if (parenthesized_expression "((byte)local_24 == '\0')" ( (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" { (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier = (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" identifier (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" ( number_literal , (string_literal ""Line range of 0 is invalid, using 1 instead\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" identifier = (call_expression "CONCAT31(local_24._1_3_,1)" identifier (argument_list "(local_24._1_3_,1)" ( (field_expression "local_24._1_3_" identifier . field_identifier) , number_literal )))) ;) })) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" identifier = (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "pbVar20 = (byte *)(local_90 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_90 + -1 + uVar19)" identifier = (cast_expression "(byte *)(local_90 + -1 + uVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + -1 + uVar19)" ( (binary_expression "local_90 + -1 + uVar19" (binary_expression "local_90 + -1" identifier + number_literal) + identifier) )))) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (if_statement "if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" if (parenthesized_expression "(pbVar5 <= pbVar20)" ( (binary_expression "pbVar5 <= pbVar20" identifier <= identifier) )) (compound_statement "{\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" { (expression_statement "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);" (assignment_expression "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier = (call_expression "dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" identifier (argument_list "(0,"opcode base of %d extends beyond end of section\n",5)" ( number_literal , (string_literal ""opcode base of %d extends beyond end of section\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" identifier (argument_list "(uVar11,uVar19)" ( identifier , identifier ))) ;) (return_statement "return 0;" return number_literal ;) })) (if_statement "if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" if (parenthesized_expression "((ushort)local_38 < 5)" ( (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" ( (type_descriptor "ushort" type_identifier) ) identifier) < number_literal) )) (compound_statement "{\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }" { (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (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 "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" identifier = identifier) ;) (if_statement "if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" if (parenthesized_expression "(*pbVar20 != 0)" ( (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" * identifier) != number_literal) )) (compound_statement "{\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" { (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" identifier = number_literal) ;) (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);" do (compound_statement "{\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" { (expression_statement "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);" (assignment_expression "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" identifier = (call_expression "strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" identifier (argument_list "((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" ( (cast_expression "(char *)pbVar16" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar21 = 0xfffffffe < local_b4;" (assignment_expression "bVar21 = 0xfffffffe < local_b4" identifier = (binary_expression "0xfffffffe < local_b4" number_literal < identifier)) ;) (expression_statement "local_b4 = (byte *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (byte *)((int)local_b4 + 1)" identifier = (cast_expression "(byte *)((int)local_b4 + 1)" ( (type_descriptor "byte *" 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 "pbVar16 = pbVar16 + sVar8 + 1;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 1" identifier = (binary_expression "pbVar16 + sVar8 + 1" (binary_expression "pbVar16 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "local_b0 = local_b0 + bVar21;" (assignment_expression "local_b0 = local_b0 + bVar21" identifier = (binary_expression "local_b0 + bVar21" identifier + identifier)) ;) (if_statement "if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" if (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) (compound_statement "{\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" { (expression_statement "pcVar6 = "directory table ends unexpectedly\n";" (assignment_expression "pcVar6 = "directory table ends unexpectedly\n"" identifier = (string_literal ""directory table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "(*pbVar16 != 0)" ( (binary_expression "*pbVar16 != 0" (pointer_expression "*pbVar16" * identifier) != number_literal) )) ;) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4)" identifier = (cast_expression "(undefined4 *)FUN_0006b190((int)local_b4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190((int)local_b4 * 4)" identifier (argument_list "((int)local_b4 * 4)" ( (binary_expression "(int)local_b4 * 4" (cast_expression "(int)local_b4" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ))))) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) (expression_statement "puVar17 = local_a4;" (assignment_expression "puVar17 = local_a4" identifier = identifier) ;) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" while (parenthesized_expression "(bVar13 != 0)" ( (binary_expression "bVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" { (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "puVar17 = puVar17 + 1;" (assignment_expression "puVar17 = puVar17 + 1" identifier = (binary_expression "puVar17 + 1" identifier + number_literal)) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" identifier (argument_list "((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar20 - (int)pbVar5" (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) })) })) (expression_statement "lVar28 = CONCAT44(local_b0,local_b4);" (assignment_expression "lVar28 = CONCAT44(local_b0,local_b4)" identifier = (call_expression "CONCAT44(local_b0,local_b4)" identifier (argument_list "(local_b0,local_b4)" ( identifier , identifier )))) ;) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" if (parenthesized_expression "((pbVar20 < pbVar5) && (pbVar16[1] != 0))" ( (binary_expression "(pbVar20 < pbVar5) && (pbVar16[1] != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(pbVar16[1] != 0)" ( (binary_expression "pbVar16[1] != 0" (subscript_expression "pbVar16[1]" identifier [ number_literal ]) != number_literal) ))) )) (compound_statement "{\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "pbVar15 = pbVar20;" (assignment_expression "pbVar15 = pbVar20" identifier = identifier) ;) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);" do (compound_statement "{\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" { (expression_statement "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);" (assignment_expression "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" identifier = (call_expression "strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" identifier (argument_list "((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" ( (cast_expression "(char *)pbVar15" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar15" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar15" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar15 = pbVar15 + sVar8 + 1;" (assignment_expression "pbVar15 = pbVar15 + sVar8 + 1" identifier = (binary_expression "pbVar15 + sVar8 + 1" (binary_expression "pbVar15 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" identifier (argument_list "(pbVar15,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" identifier = (binary_expression "pbVar15 + local_44" identifier + identifier)) ;) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (if_statement "if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" if (parenthesized_expression "(pbVar5 <= pbVar15)" ( (binary_expression "pbVar5 <= pbVar15" identifier <= identifier) )) (compound_statement "{\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" { (expression_statement "pcVar6 = "file table ends unexpectedly\n";" (assignment_expression "pcVar6 = "file table ends unexpectedly\n"" identifier = (string_literal ""file table ends unexpectedly\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) }) while (parenthesized_expression "(*pbVar15 != 0)" ( (binary_expression "*pbVar15 != 0" (pointer_expression "*pbVar15" * identifier) != number_literal) )) ;) (expression_statement "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10)" identifier = (cast_expression "(byte *)FUN_0006b190(local_94 * 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(local_94 * 0x10)" identifier (argument_list "(local_94 * 0x10)" ( (binary_expression "local_94 * 0x10" identifier * number_literal) ))))) ;) (expression_statement "bVar13 = pbVar16[1];" (assignment_expression "bVar13 = pbVar16[1]" identifier = (subscript_expression "pbVar16[1]" identifier [ number_literal ])) ;) (expression_statement "puVar17 = (undefined4 *)local_b8;" (assignment_expression "puVar17 = (undefined4 *)local_b8" identifier = (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" while (parenthesized_expression "(bVar13 != 0)" ( (binary_expression "bVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" { (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier = (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" identifier (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" identifier = (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar17 = puVar17 + 4;" (assignment_expression "puVar17 = puVar17 + 4" identifier = (binary_expression "puVar17 + 4" identifier + number_literal)) ;) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" identifier = (pointer_expression "*pbVar20" * identifier)) ;) })) (expression_statement "pbVar16 = pbVar15 + 1;" (assignment_expression "pbVar16 = pbVar15 + 1" identifier = (binary_expression "pbVar15 + 1" identifier + number_literal)) ;) (if_statement "if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" if (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }" { (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s:\n",5)" identifier (argument_list "(0,"CU: %s:\n",5)" ( number_literal , (string_literal ""CU: %s:\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" identifier (argument_list "(pcVar6,uVar11)" ( identifier , identifier ))) ;) }) (else_clause "else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" else (compound_statement "{\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" { (labeled_statement "LAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);" statement_identifier : (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;)) (if_statement "if (uVar19 == 0) goto LAB_0005cd5b;" if (parenthesized_expression "(uVar19 == 0)" ( (binary_expression "uVar19 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005cd5b;" goto statement_identifier ;)) (labeled_statement "LAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" statement_identifier : (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" identifier = (cast_expression "(byte *)lVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" if (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) )) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }" { (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;)) }) (else_clause "else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" else (compound_statement "{\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" { (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" if (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" ( (binary_expression "local_b0 < (local_b4 < uVar19)" identifier < (parenthesized_expression "(local_b4 < uVar19)" ( (binary_expression "local_b4 < uVar19" identifier < identifier) ))) )) (compound_statement "{\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" { (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier = (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n",5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" identifier (argument_list "(uVar12,uVar19,uVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005d3fb;" goto statement_identifier ;) })) (expression_statement "pcVar6 = (char *)local_a4[uVar19 - 1];" (assignment_expression "pcVar6 = (char *)local_a4[uVar19 - 1]" identifier = (cast_expression "(char *)local_a4[uVar19 - 1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "local_a4[uVar19 - 1]" identifier [ (binary_expression "uVar19 - 1" identifier - number_literal) ]))) ;) }))) (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;" if (parenthesized_expression "((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))" ( (binary_expression "(DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c)" (parenthesized_expression "(DAT_000b9da4 != 0)" ( (binary_expression "DAT_000b9da4 != 0" identifier != number_literal) )) || (parenthesized_expression "(sVar8 = strlen(pcVar6), sVar8 < 0x4c)" ( (comma_expression "sVar8 = strlen(pcVar6), sVar8 < 0x4c" (assignment_expression "sVar8 = strlen(pcVar6)" identifier = (call_expression "strlen(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) , (binary_expression "sVar8 < 0x4c" identifier < number_literal)) ))) )) (goto_statement "goto LAB_0005cd63;" goto statement_identifier ;)) (expression_statement "printf("%s:\n",uVar11);" (call_expression "printf("%s:\n",uVar11)" identifier (argument_list "("%s:\n",uVar11)" ( (string_literal ""%s:\n"" " string_content escape_sequence ") , identifier ))) ;) }))) }) (else_clause "else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" else (compound_statement "{\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "pbVar16 = pbVar16 + 2;" (assignment_expression "pbVar16 = pbVar16 + 2" identifier = (binary_expression "pbVar16 + 2" identifier + number_literal)) ;) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) }) (else_clause "else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" else (compound_statement "{\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" { (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" identifier (argument_list "()" ( ))) ;) (expression_statement "pbVar15 = (byte *)(uVar19 + local_90);" (assignment_expression "pbVar15 = (byte *)(uVar19 + local_90)" identifier = (cast_expression "(byte *)(uVar19 + local_90)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar19 + local_90)" ( (binary_expression "uVar19 + local_90" identifier + identifier) )))) ;) (expression_statement "pbVar16 = pbVar15;" (assignment_expression "pbVar16 = pbVar15" identifier = identifier) ;) (if_statement "if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" if (parenthesized_expression "(pbVar15 < pbVar5)" ( (binary_expression "pbVar15 < pbVar5" identifier < identifier) )) (compound_statement "{\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" statement_identifier : (expression_statement "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "local_ac = (undefined4 *)(uVar19 & 0xff);" (assignment_expression "local_ac = (undefined4 *)(uVar19 & 0xff)" identifier = (cast_expression "(undefined4 *)(uVar19 & 0xff)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar19 & 0xff)" ( (binary_expression "uVar19 & 0xff" identifier & number_literal) )))) ;) (if_statement "if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" if (parenthesized_expression "(local_ac != (undefined4 *)0x0)" ( (binary_expression "local_ac != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" identifier = number_literal) ;) (do_statement "do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);" do (compound_statement "{\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" { (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" identifier (argument_list "(pbVar16,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" identifier (argument_list "(pbVar16,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" identifier = (binary_expression "0xfffffffe < uVar19" number_literal < identifier)) ;) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" identifier = (binary_expression "iVar14 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar14 != 0 || local_ac != (undefined4 *)uVar19)" ( (binary_expression "iVar14 != 0 || local_ac != (undefined4 *)uVar19" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "local_ac != (undefined4 *)uVar19" identifier != (cast_expression "(undefined4 *)uVar19" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) ;) })) }) (else_clause "else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" else (compound_statement "{\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" { (expression_statement "iVar14 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar14 - 1U < 8) goto LAB_0005d415;" if (parenthesized_expression "(iVar14 - 1U < 8)" ( (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005d415;" goto statement_identifier ;)) (expression_statement "local_ac = (undefined4 *)0x0;" (assignment_expression "local_ac = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "local_bc = (byte *)&local_44;" (assignment_expression "local_bc = (byte *)&local_44" identifier = (cast_expression "(byte *)&local_44" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_44" & identifier))) ;) (expression_statement "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" { (expression_statement "pcVar6 = "Corrupt directories list\n";" (assignment_expression "pcVar6 = "Corrupt directories list\n"" identifier = (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ")) ;) (goto_statement "goto LAB_0005c678;" goto statement_identifier ;) })) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2)" identifier = (cast_expression "(undefined4 *)FUN_0006b190((int)lVar28 << 2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190((int)lVar28 << 2)" identifier (argument_list "((int)lVar28 << 2)" ( (binary_expression "(int)lVar28 << 2" (cast_expression "(int)lVar28" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))))) ;) (if_statement "if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" if (parenthesized_expression "(lVar28 != 0)" ( (binary_expression "lVar28 != 0" identifier != number_literal) )) (compound_statement "{\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" { (expression_statement "local_9c = (byte *)0x0;" (assignment_expression "local_9c = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" identifier = number_literal) ;) (do_statement "do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));" do (compound_statement "{\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              }" { (if_statement "if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" if (parenthesized_expression "(local_ac != (undefined4 *)0x0)" ( (binary_expression "local_ac != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" { (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" identifier = number_literal) ;) (expression_statement "local_b8 = pbVar15;" (assignment_expression "local_b8 = pbVar15" identifier = identifier) ;) (do_statement "do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);" do (compound_statement "{\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  }" { (expression_statement "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier (argument_list "(local_b8,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" identifier = (binary_expression "local_b8 + local_44" identifier + identifier)) ;) (expression_statement "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" identifier (argument_list "(local_b8,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" identifier = (binary_expression "local_b8 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" { (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005c9e0;" goto statement_identifier ;) })) (if_statement "if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" if (parenthesized_expression "(lVar29 == 1)" ( (binary_expression "lVar29 == 1" identifier == number_literal) )) (compound_statement "{\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" { (if_statement "if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" if (parenthesized_expression "(lVar30 == 8)" ( (binary_expression "lVar30 == 8" identifier == number_literal) )) (compound_statement "{\n                        local_a4[(int)local_9c] = pbVar16;\n                      }" { (expression_statement "local_a4[(int)local_9c] = pbVar16;" (assignment_expression "local_a4[(int)local_9c] = pbVar16" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) }) (else_clause "else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" else (if_statement "if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" if (parenthesized_expression "(lVar30 == 0x1f)" ( (binary_expression "lVar30 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" { (if_statement "if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" if (parenthesized_expression "(local_20[0] < 9)" ( (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }" { (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" if (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" ( (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" identifier + (subscript_expression "local_20[0]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }" { (labeled_statement "LAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto LAB_0005c934;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005c934;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" else (compound_statement "{\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" { (labeled_statement "LAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" statement_identifier : (if_statement "if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" if (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) (compound_statement "{\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005c92c;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" else (compound_statement "{\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" { (expression_statement "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" identifier = (call_expression "dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" identifier (argument_list "(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" ( (binary_expression "pbVar5 <= pbVar16 + 8" identifier <= (binary_expression "pbVar16 + 8" identifier + number_literal)) )) (goto_statement "goto LAB_0005c920;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);" statement_identifier : (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,uVar19)" ( identifier , identifier ))) ;)) }))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" identifier = (call_expression "FUN_0004e690()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_a4[(int)local_9c] = uVar11;" (assignment_expression "local_a4[(int)local_9c] = uVar11" (subscript_expression "local_a4[(int)local_9c]" identifier [ (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) ]) = identifier) ;) })))) })) (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" identifier = (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" identifier (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" ( number_literal , number_literal , identifier , identifier , number_literal , number_literal , number_literal , number_literal , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal , (binary_expression "local_38 & 0xffff" identifier & number_literal) , number_literal , number_literal , identifier , number_literal , number_literal ))))) ;) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_ac != (undefined4 *)local_94)" ( (binary_expression "local_ac != (undefined4 *)local_94" identifier != (cast_expression "(undefined4 *)local_94" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) ;) })) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" { (labeled_statement "LAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt directories list\n",5)" identifier (argument_list "(0,"Corrupt directories list\n",5)" ( number_literal , (string_literal ""Corrupt directories list\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if (local_60 < pbVar5) goto LAB_0005ca09;" if (parenthesized_expression "(local_60 < pbVar5)" ( (binary_expression "local_60 < pbVar5" identifier < identifier) )) (goto_statement "goto LAB_0005ca09;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ccd9;" goto statement_identifier ;) })) (expression_statement "bVar21 = 0xfffffffe < local_9c;" (assignment_expression "bVar21 = 0xfffffffe < local_9c" identifier = (binary_expression "0xfffffffe < local_9c" number_literal < identifier)) ;) (expression_statement "local_9c = (byte *)((int)local_9c + 1);" (assignment_expression "local_9c = (byte *)((int)local_9c + 1)" identifier = (cast_expression "(byte *)((int)local_9c + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_9c + 1)" ( (binary_expression "(int)local_9c + 1" (cast_expression "(int)local_9c" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_98 = local_98 + (uint)bVar21;" (assignment_expression "local_98 = local_98 + (uint)bVar21" identifier = (binary_expression "local_98 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(lVar28 != CONCAT44(local_98,local_9c))" ( (binary_expression "lVar28 != CONCAT44(local_98,local_9c)" identifier != (call_expression "CONCAT44(local_98,local_9c)" identifier (argument_list "(local_98,local_9c)" ( identifier , identifier )))) )) ;) })) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (if_statement "if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" if (parenthesized_expression "(local_60 < pbVar5)" ( (binary_expression "local_60 < pbVar5" identifier < identifier) )) (compound_statement "{\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }" { (labeled_statement "LAB_0005ca09:\n              iVar14 = 1;" statement_identifier : (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;)) (labeled_statement "LAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" statement_identifier : (expression_statement "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "local_7c = local_7c & 0xff;" (assignment_expression "local_7c = local_7c & 0xff" identifier = (binary_expression "local_7c & 0xff" identifier & number_literal)) ;) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" identifier = identifier) ;) (if_statement "if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" if (parenthesized_expression "(local_7c != 0)" ( (binary_expression "local_7c != 0" identifier != number_literal) )) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" { (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" identifier = number_literal) ;) (do_statement "do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);" do (compound_statement "{\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" { (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier ))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" identifier = (binary_expression "0xfffffffe < uVar19" number_literal < identifier)) ;) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" identifier = (binary_expression "iVar14 + (uint)bVar21" identifier + (cast_expression "(uint)bVar21" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) }) while (parenthesized_expression "(iVar14 != 0 || local_7c != uVar19)" ( (binary_expression "iVar14 != 0 || local_7c != uVar19" (binary_expression "iVar14 != 0" identifier != number_literal) || (binary_expression "local_7c != uVar19" identifier != identifier)) )) ;) })) }) (else_clause "else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" else (compound_statement "{\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" { (if_statement "if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;" if (parenthesized_expression "((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))" ( (binary_expression "(pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto LAB_0005ca0e;" goto statement_identifier ;)) (labeled_statement "LAB_0005ccd9:\n              local_7c = 0;" statement_identifier : (expression_statement "local_7c = 0;" (assignment_expression "local_7c = 0" identifier = number_literal) ;)) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" identifier = identifier) ;) }))) (expression_statement "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" identifier (argument_list "(pbVar16,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" { (expression_statement "pcVar6 = "Corrupt file name list\n";" (assignment_expression "pcVar6 = "Corrupt file name list\n"" identifier = (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ")) ;) (labeled_statement "LAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" identifier = (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return local_58;" return identifier ;) })) (expression_statement "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);" (assignment_expression "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4)" identifier = (cast_expression "(byte *)FUN_0006b1d0(1,local_94 << 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b1d0(1,local_94 << 4)" identifier (argument_list "(1,local_94 << 4)" ( number_literal , (binary_expression "local_94 << 4" identifier << number_literal) ))))) ;) (if_statement "if (local_94 == 0) goto LAB_0005cd50;" if (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;)) (expression_statement "local_ac = (undefined4 *)((int)local_b8 + 4);" (assignment_expression "local_ac = (undefined4 *)((int)local_b8 + 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "local_78 = 0;" (assignment_expression "local_78 = 0" identifier = number_literal) ;) (do_statement "do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);" do (compound_statement "{\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            }" { (if_statement "if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" if (parenthesized_expression "(local_7c != 0)" ( (binary_expression "local_7c != 0" identifier != number_literal) )) (compound_statement "{\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" { (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" identifier = number_literal) ;) (expression_statement "local_9c = local_60;" (assignment_expression "local_9c = local_60" identifier = identifier) ;) (do_statement "do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);" do (compound_statement "{\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                }" { (expression_statement "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier (argument_list "(local_9c,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" identifier = (binary_expression "local_9c + local_44" identifier + identifier)) ;) (expression_statement "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier = (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" identifier (argument_list "(local_9c,local_bc,0,pbVar5)" ( identifier , identifier , number_literal , identifier )))) ;) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" identifier = (binary_expression "local_9c + local_44" identifier + identifier)) ;) (if_statement "if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" { (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd30;" goto statement_identifier ;) })) (if_statement "if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" if (parenthesized_expression "(lVar29 == 1)" ( (binary_expression "lVar29 == 1" identifier == number_literal) )) (compound_statement "{\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }" { (if_statement "if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 8)" ( (binary_expression "lVar30 == 8" identifier == number_literal) )) (compound_statement "{\n                      local_ac[-1] = pbVar16;\n                    }" { (expression_statement "local_ac[-1] = pbVar16;" (assignment_expression "local_ac[-1] = pbVar16" (subscript_expression "local_ac[-1]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" else (if_statement "if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0x1f)" ( (binary_expression "lVar30 == 0x1f" identifier == number_literal) )) (compound_statement "{\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" { (if_statement "if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" if (parenthesized_expression "(local_20[0] < 9)" ( (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" identifier [ number_literal ]) < number_literal) )) (compound_statement "{\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }" { (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" if (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" ( (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" identifier + (subscript_expression "local_20[0]" identifier [ number_literal ])) < identifier) )) (compound_statement "{\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }" { (labeled_statement "LAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto LAB_0005cc55;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto LAB_0005cc55;" goto statement_identifier ;))) }) (else_clause "else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" else (compound_statement "{\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" { (labeled_statement "LAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" statement_identifier : (if_statement "if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" if (parenthesized_expression "(pbVar16 < pbVar5)" ( (binary_expression "pbVar16 < pbVar5" identifier < identifier) )) (compound_statement "{\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto LAB_0005cc49;" goto statement_identifier ;) }))) }))) }) (else_clause "else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" else (compound_statement "{\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" { (expression_statement "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" identifier = (call_expression "dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" identifier (argument_list "(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" ( (binary_expression "pbVar5 <= pbVar16 + 8" identifier <= (binary_expression "pbVar16 + 8" identifier + number_literal)) )) (goto_statement "goto LAB_0005cc3d;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "LAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);" statement_identifier : (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,uVar19)" ( identifier , identifier ))) ;)) }))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" identifier = (call_expression "FUN_0004e690()" identifier (argument_list "()" ( )))) ;) (expression_statement "local_ac[-1] = uVar11;" (assignment_expression "local_ac[-1] = uVar11" (subscript_expression "local_ac[-1]" identifier [ number_literal ]) = identifier) ;) })))) }) (else_clause "else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" else (if_statement "if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" if (parenthesized_expression "(lVar29 == 2)" ( (binary_expression "lVar29 == 2" identifier == number_literal) )) (compound_statement "{\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" { (if_statement "if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0xb)" ( (binary_expression "lVar30 == 0xb" identifier == number_literal) )) (compound_statement "{\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" { (if_statement "if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" if (parenthesized_expression "(pbVar16 + 1 < pbVar5)" ( (binary_expression "pbVar16 + 1 < pbVar5" (binary_expression "pbVar16 + 1" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar14 = 1;\n                      }" { (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" identifier = number_literal) ;) }) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" else (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" if (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" ( (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) || (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar14 - 1U" number_literal < (binary_expression "iVar14 - 1U" identifier - number_literal))) ))) )) (compound_statement "{\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" { (labeled_statement "LAB_0005ce4f:\n                        *local_ac = 0;" statement_identifier : (expression_statement "*local_ac = 0;" (assignment_expression "*local_ac = 0" (pointer_expression "*local_ac" * identifier) = number_literal) ;)) (goto_statement "goto LAB_0005cb51;" goto statement_identifier ;) })))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) }) (else_clause "else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" else (if_statement "if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 0xf)" ( (binary_expression "lVar30 == 0xf" identifier == number_literal) )) (compound_statement "{\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }" { (expression_statement "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar16,0,0,pbVar5)" identifier (argument_list "(pbVar16,0,0,pbVar5)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) }) (else_clause "else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" else (if_statement "if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" if (parenthesized_expression "(lVar30 == 5)" ( (binary_expression "lVar30 == 5" identifier == number_literal) )) (compound_statement "{\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" { (if_statement "if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" if (parenthesized_expression "(pbVar16 + 2 < pbVar5)" ( (binary_expression "pbVar16 + 2 < pbVar5" (binary_expression "pbVar16 + 2" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar14 = 2;\n                      }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) }) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" else (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" if (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" ( (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" ( (binary_expression "pbVar5 <= pbVar16" identifier <= identifier) )) || (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" identifier = (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar16" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "7 < iVar14 - 1U" number_literal < (binary_expression "iVar14 - 1U" identifier - number_literal))) ))) )) (goto_statement "goto LAB_0005ce4f;" goto statement_identifier ;)))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar16,iVar14)" ( identifier , identifier )))) ;) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" * identifier) = identifier) ;) })))))) })))) (labeled_statement "LAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" statement_identifier : (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" identifier = (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" identifier (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" ( number_literal , number_literal , identifier , identifier , number_literal , number_literal , number_literal , number_literal , (subscript_expression "local_20[0]" identifier [ number_literal ]) , number_literal , (binary_expression "local_38 & 0xffff" identifier & number_literal) , number_literal , number_literal , identifier , number_literal , number_literal ))))) ;)) (expression_statement "local_8c = local_8c + 1;" (assignment_expression "local_8c = local_8c + 1" identifier = (binary_expression "local_8c + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_7c != local_8c)" ( (binary_expression "local_7c != local_8c" identifier != identifier) )) ;) })) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" if (parenthesized_expression "(pbVar5 == pbVar16)" ( (binary_expression "pbVar5 == pbVar16" identifier == identifier) )) (compound_statement "{\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" { (labeled_statement "LAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);" statement_identifier : (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" identifier = (call_expression "dcgettext(0,"Corrupt file name list\n",5)" identifier (argument_list "(0,"Corrupt file name list\n",5)" ( number_literal , (string_literal ""Corrupt file name list\n"" " string_content escape_sequence ") , number_literal )))) ;)) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (goto_statement "goto LAB_0005cd50;" goto statement_identifier ;) })) (expression_statement "local_78 = local_78 + 1;" (assignment_expression "local_78 = local_78 + 1" identifier = (binary_expression "local_78 + 1" identifier + number_literal)) ;) (expression_statement "local_ac = local_ac + 4;" (assignment_expression "local_ac = local_ac + 4" identifier = (binary_expression "local_ac + 4" identifier + number_literal)) ;) }) while (parenthesized_expression "(local_78 != local_94)" ( (binary_expression "local_78 != local_94" identifier != identifier) )) ;) (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" identifier = (pointer_expression "*(uint *)((int)local_b8 + 4)" * (cast_expression "(uint *)((int)local_b8 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + 4)" ( (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (if_statement "if (uVar19 != 0) goto LAB_0005cdc0;" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0005cdc0;" goto statement_identifier ;)) (labeled_statement "LAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;" statement_identifier : (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" identifier = (pointer_expression "*(undefined4 *)local_b8" * (cast_expression "(undefined4 *)local_b8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "pcVar6 = ".";" (assignment_expression "pcVar6 = "."" identifier = (string_literal ""."" " string_content ")) ;) (labeled_statement "LAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" statement_identifier : (expression_statement "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"CU: %s/%s:\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CU: %s/%s:\n",5)" identifier (argument_list "(0,"CU: %s/%s:\n",5)" ( number_literal , (string_literal ""CU: %s/%s:\n"" " string_content escape_sequence ") , number_literal ))))) ;)) (expression_statement "printf(pcVar9,pcVar6,uVar11);" (call_expression "printf(pcVar9,pcVar6,uVar11)" identifier (argument_list "(pcVar9,pcVar6,uVar11)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" identifier (argument_list "(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" ( number_literal , (string_literal ""File name                            Line number    Starting address    View\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b75e0 = local_40;" (assignment_expression "DAT_000b75e0 = local_40" identifier = identifier) ;) (expression_statement "DAT_000b75e4 = local_3c;" (assignment_expression "DAT_000b75e4 = local_3c" identifier = identifier) ;) (expression_statement "DAT_000b75e8 = local_38;" (assignment_expression "DAT_000b75e8 = local_38" identifier = identifier) ;) (expression_statement "DAT_000b75ec = local_34;" (assignment_expression "DAT_000b75ec = local_34" identifier = identifier) ;) (expression_statement "DAT_000b75f0 = local_30;" (assignment_expression "DAT_000b75f0 = local_30" identifier = identifier) ;) (expression_statement "DAT_000b75f4 = local_2c;" (assignment_expression "DAT_000b75f4 = local_2c" identifier = identifier) ;) (expression_statement "DAT_000b75f8 = local_28;" (assignment_expression "DAT_000b75f8 = local_28" identifier = identifier) ;) (expression_statement "DAT_000b75fc = local_24;" (assignment_expression "DAT_000b75fc = local_24" identifier = identifier) ;) (expression_statement "DAT_000b7600 = local_20[0];" (assignment_expression "DAT_000b7600 = local_20[0]" identifier = (subscript_expression "local_20[0]" identifier [ number_literal ])) ;) (expression_statement "local_bc = pbVar16;" (assignment_expression "local_bc = pbVar16" identifier = identifier) ;) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" identifier = identifier) ;) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" if (parenthesized_expression "(pbVar16 < local_48)" ( (binary_expression "pbVar16 < local_48" identifier < identifier) )) (compound_statement "{\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" { (labeled_statement "LAB_0005ad11:\n            lVar29 = lVar30;" statement_identifier : (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" identifier = identifier) ;)) (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)lVar28 >> 0x20)" ( (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" identifier = (cast_expression "(byte *)lVar28" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pbVar20 = local_bc + 1;" (assignment_expression "pbVar20 = local_bc + 1" identifier = (binary_expression "local_bc + 1" identifier + number_literal)) ;) (expression_statement "bVar13 = *local_bc;" (assignment_expression "bVar13 = *local_bc" identifier = (pointer_expression "*local_bc" * identifier)) ;) (expression_statement "local_ac = (undefined4 *)(uint)bVar13;" (assignment_expression "local_ac = (undefined4 *)(uint)bVar13" identifier = (cast_expression "(undefined4 *)(uint)bVar13" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier))) ;) (if_statement "if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" if (parenthesized_expression "(local_24._1_1_ <= bVar13)" ( (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" identifier . field_identifier) <= identifier) )) (compound_statement "{\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" { (expression_statement "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;" (assignment_expression "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" identifier = (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_" (cast_expression "(ushort)bVar13" ( (type_descriptor "ushort" type_identifier) ) identifier) - (cast_expression "(ushort)local_24._1_1_" ( (type_descriptor "ushort" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) & number_literal)) ;) (expression_statement "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);" (assignment_expression "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24)" identifier = (call_expression "(byte)(uVar4 % (ushort)(byte)local_24)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(uVar4 % (ushort)(byte)local_24)" ( (binary_expression "uVar4 % (ushort)(byte)local_24" identifier % (cast_expression "(ushort)(byte)local_24" ( (type_descriptor "ushort" type_identifier) ) (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier))) )))) ;) (expression_statement "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;" (assignment_expression "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" identifier = (binary_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" (call_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24))" identifier (argument_list "(bVar13,(char)(uVar4 / (byte)local_24))" ( identifier , (cast_expression "(char)(uVar4 / (byte)local_24)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(uVar4 / (byte)local_24)" ( (binary_expression "uVar4 / (byte)local_24" identifier / (cast_expression "(byte)local_24" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ))) & number_literal)) ;) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" if (parenthesized_expression "(local_2c._1_1_ != 1)" ( (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" { (expression_statement "uVar7 = (byte)DAT_000b9d20 + uVar19;" (assignment_expression "uVar7 = (byte)DAT_000b9d20 + uVar19" identifier = (binary_expression "(byte)DAT_000b9d20 + uVar19" (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier) + identifier)) ;) (expression_statement "uVar19 = uVar7 / local_2c._1_1_;" (assignment_expression "uVar19 = uVar7 / local_2c._1_1_" identifier = (binary_expression "uVar7 / local_2c._1_1_" identifier / (field_expression "local_2c._1_1_" identifier . field_identifier))) ;) (expression_statement "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);" (assignment_expression "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_)" identifier = (call_expression "(undefined1)(uVar7 % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(uVar7 % (uint)local_2c._1_1_)" ( (binary_expression "uVar7 % (uint)local_2c._1_1_" identifier % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88)" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_88)" identifier (argument_list "(DAT_000b9d20._1_1_,local_88)" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , identifier )))) ;) })) (expression_statement "uVar19 = uVar19 * (local_2c & 0xff);" (assignment_expression "uVar19 = uVar19 * (local_2c & 0xff)" identifier = (binary_expression "uVar19 * (local_2c & 0xff)" identifier * (parenthesized_expression "(local_2c & 0xff)" ( (binary_expression "local_2c & 0xff" identifier & number_literal) )))) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" { (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) })) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28" identifier = (binary_expression "DAT_000b9d10 + (uint)bVar13 + local_28" (binary_expression "DAT_000b9d10 + (uint)bVar13" identifier + (cast_expression "(uint)bVar13" ( (type_descriptor "uint" type_identifier) ) identifier)) + identifier)) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;) })) (switch_statement "switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" switch (parenthesized_expression "(local_ac)" ( identifier )) (compound_statement "{\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" { (case_statement "case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;" case (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,local_48)" identifier (argument_list "(pbVar20,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (if_statement "if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" if (parenthesized_expression "(iVar14 == 0)" ( (binary_expression "iVar14 == 0" identifier == number_literal) )) (compound_statement "{\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" { (expression_statement "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5)" identifier = (call_expression "dcgettext(0,"Badly formed extended line op encountered!\n",5)" identifier (argument_list "(0,"Badly formed extended line op encountered!\n",5)" ( number_literal , (string_literal ""Badly formed extended line op encountered!\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;) })) (expression_statement "pbVar16 = pbVar20 + local_44;" (assignment_expression "pbVar16 = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "local_bc = pbVar20 + local_44 + iVar14;" (assignment_expression "local_bc = pbVar20 + local_44 + iVar14" identifier = (binary_expression "pbVar20 + local_44 + iVar14" (binary_expression "pbVar20 + local_44" identifier + identifier) + identifier)) ;) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" identifier = (binary_expression "pbVar16 + 1" identifier + number_literal)) ;) (expression_statement "uVar19 = (uint)*pbVar16;" (assignment_expression "uVar19 = (uint)*pbVar16" identifier = (binary_expression "(uint)*pbVar16" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (switch_statement "switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" switch (parenthesized_expression "(uVar19)" ( identifier )) (compound_statement "{\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (case_statement "default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);" default : (expression_statement "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"UNKNOWN (%u): length %d\n",5)" identifier (argument_list "(0,"UNKNOWN (%u): length %d\n",5)" ( number_literal , (string_literal ""UNKNOWN (%u): length %d\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar19,iVar14);" (call_expression "printf(pcVar6,uVar19,iVar14)" identifier (argument_list "(pcVar6,uVar19,iVar14)" ( identifier , identifier , identifier ))) ;)) (case_statement "case 1:" case number_literal :) (case_statement "case 4:" case number_literal :) (case_statement "case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;" case number_literal : (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (if_statement "if (uVar19 != 1) break;" if (parenthesized_expression "(uVar19 != 1)" ( (binary_expression "uVar19 != 1" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "local_ac = (undefined4 *)0xffffffff;" (assignment_expression "local_ac = (undefined4 *)0xffffffff" identifier = (cast_expression "(undefined4 *)0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto joined_r0x0005af93;" goto statement_identifier ;)) (case_statement "case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;" case number_literal : (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" identifier = (binary_expression "iVar14 - 1" identifier - number_literal)) ;) (if_statement "if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" if (parenthesized_expression "(uVar19 < 9)" ( (binary_expression "uVar19 < 9" identifier < number_literal) )) (compound_statement "{\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }" { (if_statement "if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (compound_statement "{\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }" { (labeled_statement "code_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;" statement_identifier : (if_statement "if (uVar19 - 1 < 8) goto code_r0x0005b218;" if (parenthesized_expression "(uVar19 - 1 < 8)" ( (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" identifier - number_literal) < number_literal) )) (goto_statement "goto code_r0x0005b218;" goto statement_identifier ;))) }) (else_clause "else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" else (compound_statement "{\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" { (labeled_statement "code_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" statement_identifier : (if_statement "if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" if (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) (compound_statement "{\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" { (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (goto_statement "goto code_r0x0005b20c;" goto statement_identifier ;) }))) }))) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" else (compound_statement "{\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" { (expression_statement "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);" (assignment_expression "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" identifier = (call_expression "dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" identifier (argument_list "(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" ( number_literal , (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" " string_content ") , (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" " string_content ") , identifier , number_literal )))) ;) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" identifier (argument_list "(uVar11,uVar19,8)" ( identifier , identifier , number_literal ))) ;) (if_statement "if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;" if (parenthesized_expression "(pbVar5 <= pbVar16 + 9)" ( (binary_expression "pbVar5 <= pbVar16 + 9" identifier <= (binary_expression "pbVar16 + 9" identifier + number_literal)) )) (goto_statement "goto code_r0x0005b1f6;" goto statement_identifier ;)) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (labeled_statement "code_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" statement_identifier : (expression_statement "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" (assignment_expression "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,uVar19)" ( identifier , identifier )))) ;)) }))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" case number_literal : (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" identifier = (binary_expression "local_94 + 1" identifier + number_literal)) ;) (expression_statement "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10)" identifier = (cast_expression "(byte *)FUN_0006b220(local_b8,local_94 * 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b220(local_b8,local_94 * 0x10)" identifier (argument_list "(local_b8,local_94 * 0x10)" ( identifier , (binary_expression "local_94 * 0x10" identifier * number_literal) ))))) ;) (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" identifier = (binary_expression "DAT_000b9d24 + 1" identifier + number_literal)) ;) (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + (local_94 * 4 + -4) * 4)" ( (binary_expression "(int)local_b8 + (local_94 * 4 + -4) * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(local_94 * 4 + -4) * 4" (parenthesized_expression "(local_94 * 4 + -4)" ( (binary_expression "local_94 * 4 + -4" (binary_expression "local_94 * 4" identifier * number_literal) + number_literal) )) * number_literal)) )))) ;) (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" * identifier) = identifier) ;) (expression_statement "sVar8 = strlen((char *)pbVar20);" (assignment_expression "sVar8 = strlen((char *)pbVar20)" identifier = (call_expression "strlen((char *)pbVar20)" identifier (argument_list "((char *)pbVar20)" ( (cast_expression "(char *)pbVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "pbVar16 = pbVar16 + sVar8 + 2;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 2" identifier = (binary_expression "pbVar16 + sVar8 + 2" (binary_expression "pbVar16 + sVar8" identifier + identifier) + number_literal)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier (argument_list "(pbVar16,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" identifier = (binary_expression "pbVar16 + local_44" identifier + identifier)) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" identifier (argument_list "(pbVar16,&local_44,0,local_48)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" identifier = (call_expression "FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" identifier (argument_list "(pbVar16 + local_44,&local_44,0,local_48)" ( (binary_expression "pbVar16 + local_44" identifier + identifier) , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;)) })) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x1:" case (cast_expression "(undefined4 *)0x1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) :) (case_statement "case (undefined4 *)0xa:" case (cast_expression "(undefined4 *)0xa" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) :) (case_statement "case (undefined4 *)0xb:\n              goto code_r0x0005af82;" case (cast_expression "(undefined4 *)0xb" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (goto_statement "goto code_r0x0005af82;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;" case (cast_expression "(undefined4 *)0x2" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" if (parenthesized_expression "(local_2c._1_1_ != 1)" ( (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" { (expression_statement "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" identifier = (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" ( (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" identifier + (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier))) )) / (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier)))) ;) (expression_statement "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" identifier . field_identifier) = (call_expression "(undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" ( (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" ( (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" identifier + (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier))) )) % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (goto_statement "goto code_r0x0005ae5c;" goto statement_identifier ;) })) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (labeled_statement "code_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" statement_identifier : (expression_statement "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" (assignment_expression "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19)" identifier = (binary_expression "lVar29 + (ulonglong)(iVar14 * uVar19)" identifier + (call_expression "(ulonglong)(iVar14 * uVar19)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(iVar14 * uVar19)" ( (binary_expression "iVar14 * uVar19" identifier * identifier) ))))) ;)) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (iVar14 * uVar19 == 0) break;" if (parenthesized_expression "(iVar14 * uVar19 == 0)" ( (binary_expression "iVar14 * uVar19 == 0" (binary_expression "iVar14 * uVar19" identifier * identifier) == number_literal) )) (break_statement "break;" break ;)) (labeled_statement "code_r0x0005ae7e:\n              lVar29 = lVar30;" statement_identifier : (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" identifier = identifier) ;)) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;" case (cast_expression "(undefined4 *)0x3" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,1,pbVar5)" identifier (argument_list "(pbVar20,&local_44,1,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + iVar14;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + iVar14" identifier = (binary_expression "DAT_000b9d10 + iVar14" identifier + identifier)) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;" case (cast_expression "(undefined4 *)0x4" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" identifier = (binary_expression "iVar14 - 1" identifier - number_literal)) ;) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" identifier = identifier) ;) (if_statement "if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" if (parenthesized_expression "((local_b8 == (byte *)0x0) || (local_94 == 0))" ( (binary_expression "(local_b8 == (byte *)0x0) || (local_94 == 0)" (parenthesized_expression "(local_b8 == (byte *)0x0)" ( (binary_expression "local_b8 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(local_94 == 0)" ( (binary_expression "local_94 == 0" identifier == number_literal) ))) )) (compound_statement "{\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }" { (expression_statement "pcVar6 = "\n [Use file table entry %d]\n";" (assignment_expression "pcVar6 = "\n [Use file table entry %d]\n"" identifier = (string_literal ""\n [Use file table entry %d]\n"" " escape_sequence string_content escape_sequence ")) ;) }) (else_clause "else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" else (compound_statement "{\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" { (if_statement "if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" if (parenthesized_expression "(uVar19 < local_94)" ( (binary_expression "uVar19 < local_94" identifier < identifier) )) (compound_statement "{\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" { (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" identifier = (cast_expression "(undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" ( (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" identifier * number_literal) * number_literal)) )))) ;) (expression_statement "uVar19 = puVar17[1];" (assignment_expression "uVar19 = puVar17[1]" identifier = (subscript_expression "puVar17[1]" identifier [ number_literal ])) ;) (if_statement "if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" if (parenthesized_expression "(uVar19 == 0)" ( (binary_expression "uVar19 == 0" identifier == number_literal) )) (compound_statement "{\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (expression_statement "printf("\n./%s:[++]\n",*puVar17);" (call_expression "printf("\n./%s:[++]\n",*puVar17)" identifier (argument_list "("\n./%s:[++]\n",*puVar17)" ( (string_literal ""\n./%s:[++]\n"" " escape_sequence string_content escape_sequence ") , (pointer_expression "*puVar17" * identifier) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" else (if_statement "if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" if (parenthesized_expression "((local_a4 == (undefined4 *)0x0) || (lVar28 == 0))" ( (binary_expression "(local_a4 == (undefined4 *)0x0) || (lVar28 == 0)" (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" ( (binary_expression "local_a4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(lVar28 == 0)" ( (binary_expression "lVar28 == 0" identifier == number_literal) ))) )) (compound_statement "{\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (expression_statement "uVar11 = *puVar17;" (assignment_expression "uVar11 = *puVar17" identifier = (pointer_expression "*puVar17" * identifier)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" identifier (argument_list "(0,"\n [Use file %s in directory table entry %d]\n",5)" ( number_literal , (string_literal ""\n [Use file %s in directory table entry %d]\n"" " escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,uVar11,uVar19);" (call_expression "printf(pcVar6,uVar11,uVar19)" identifier (argument_list "(pcVar6,uVar11,uVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" else (compound_statement "{\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" { (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" if (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" ( (binary_expression "local_b0 < (local_b4 < uVar19)" identifier < (parenthesized_expression "(local_b4 < uVar19)" ( (binary_expression "local_b4 < uVar19" identifier < identifier) ))) )) (compound_statement "{\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" { (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier = (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" identifier (argument_list "(0,"directory index %u > number of directories %s\n",5)" ( number_literal , (string_literal ""directory index %u > number of directories %s\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" identifier (argument_list "(uVar12,uVar19,uVar11)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "\n <over large directory table entry %u>\n";" (assignment_expression "pcVar6 = "\n <over large directory table entry %u>\n"" identifier = (string_literal ""\n <over large directory table entry %u>\n"" " escape_sequence string_content escape_sequence ")) ;) (goto_statement "goto code_r0x0005b184;" goto statement_identifier ;) })) (expression_statement "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);" (call_expression "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" identifier (argument_list "("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" ( (string_literal ""\n%s/%s:\n"" " escape_sequence string_content escape_sequence ") , (subscript_expression "local_a4[uVar19 - 1]" identifier [ (binary_expression "uVar19 - 1" identifier - number_literal) ]) , (pointer_expression "*puVar17" * identifier) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }))))) (break_statement "break;" break ;) })) (expression_statement "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);" (assignment_expression "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5)" identifier = (call_expression "dcgettext(0,"file index %u > number of files %u\n",5)" identifier (argument_list "(0,"file index %u > number of files %u\n",5)" ( number_literal , (string_literal ""file index %u > number of files %u\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,iVar14,local_94);" (call_expression "warn(uVar11,iVar14,local_94)" identifier (argument_list "(uVar11,iVar14,local_94)" ( identifier , identifier , identifier ))) ;) (expression_statement "pcVar6 = "\n <over large file table index %u>";" (assignment_expression "pcVar6 = "\n <over large file table index %u>"" identifier = (string_literal ""\n <over large file table index %u>"" " escape_sequence string_content ")) ;) }))) (goto_statement "goto code_r0x0005b184;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;" case (cast_expression "(undefined4 *)0x5" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;" case (cast_expression "(undefined4 *)0x6" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);" (assignment_expression "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0)" identifier = (call_expression "(uint)(DAT_000b9d18 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_000b9d18 == 0)" ( (binary_expression "DAT_000b9d18 == 0" identifier == number_literal) )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;" case (cast_expression "(undefined4 *)0x7" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" identifier = number_literal) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;" case (cast_expression "(undefined4 *)0x8" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" identifier = (binary_expression "local_2c & 0xff" identifier & number_literal)) ;) (expression_statement "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));" (assignment_expression "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" identifier = (cast_expression "(int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" ( (binary_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(~(uint)local_24._1_1_ & 0xff)" ( (binary_expression "~(uint)local_24._1_1_ & 0xff" (unary_expression "~(uint)local_24._1_1_" ~ (cast_expression "(uint)local_24._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_24._1_1_" identifier . field_identifier))) & number_literal) ))) / (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(longlong)" ( identifier ))) (argument_list "(int)" ( identifier ))) (argument_list "(local_24 & 0xff)" ( (binary_expression "local_24 & 0xff" identifier & number_literal) )))) )))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (if_statement "if (local_2c._1_1_ == 1) goto code_r0x0005c370;" if (parenthesized_expression "(local_2c._1_1_ == 1)" ( (binary_expression "local_2c._1_1_ == 1" (field_expression "local_2c._1_1_" identifier . field_identifier) == number_literal) )) (goto_statement "goto code_r0x0005c370;" goto statement_identifier ;)) (expression_statement "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" identifier = (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" ( (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) + identifier) )) / (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier)))) ;) (expression_statement "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" identifier . field_identifier) = (call_expression "(undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" ( identifier )) (argument_list "(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" ( (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" ( (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) + identifier) )) % (cast_expression "(uint)local_2c._1_1_" ( (type_descriptor "uint" type_identifier) ) (field_expression "local_2c._1_1_" identifier . field_identifier))) )))) ;) (labeled_statement "code_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;" statement_identifier : (expression_statement "uVar19 = uVar19 * uVar7;" (assignment_expression "uVar19 = uVar19 * uVar7" identifier = (binary_expression "uVar19 * uVar7" identifier * identifier)) ;)) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" identifier = (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" identifier (argument_list "(DAT_000b9d20._1_1_,local_ac._0_1_)" ( (field_expression "DAT_000b9d20._1_1_" identifier . field_identifier) , (field_expression "local_ac._0_1_" identifier . field_identifier) )))) ;) (expression_statement "lVar30 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar30 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" identifier = (binary_expression "lVar29 + (ulonglong)uVar19" identifier + (cast_expression "(ulonglong)uVar19" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (if_statement "if (uVar19 != 0) goto code_r0x0005ae7e;" if (parenthesized_expression "(uVar19 != 0)" ( (binary_expression "uVar19 != 0" identifier != number_literal) )) (goto_statement "goto code_r0x0005ae7e;" goto statement_identifier ;)) (break_statement "break;" break ;)) (case_statement "case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;" case (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "local_bc = local_bc + 3;" (assignment_expression "local_bc = local_bc + 3" identifier = (binary_expression "local_bc + 3" identifier + number_literal)) ;) (if_statement "if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" if (parenthesized_expression "(local_bc < pbVar5)" ( (binary_expression "local_bc < pbVar5" identifier < identifier) )) (compound_statement "{\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) (labeled_statement "code_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" statement_identifier : (expression_statement "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14)" identifier = (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" ( (pointer_expression "*DAT_000b9dd8" * identifier) )) (argument_list "(pbVar20,iVar14)" ( identifier , identifier )))) ;)) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" else (compound_statement "{\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" { (if_statement "if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;" if (parenthesized_expression "((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))" ( (binary_expression "(pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar20 < pbVar5)" ( (binary_expression "pbVar20 < pbVar5" identifier < identifier) )) && (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" ( (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" identifier = (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pbVar20" ( (type_descriptor "int" primitive_type) ) identifier))) , (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" identifier - number_literal) < number_literal)) ))) )) (goto_statement "goto code_r0x0005c4cd;" goto statement_identifier ;)) (expression_statement "uStack_84 = 0;" (assignment_expression "uStack_84 = 0" identifier = number_literal) ;) }))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" identifier = (binary_expression "DAT_000b9d20 & 0xff00" identifier & number_literal)) ;) (expression_statement "lVar29 = lVar29 + (ulonglong)uStack_84;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uStack_84" identifier = (binary_expression "lVar29 + (ulonglong)uStack_84" identifier + (cast_expression "(ulonglong)uStack_84" ( (type_descriptor "ulonglong" type_identifier) ) identifier))) ;) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(local_48 <= local_bc)" ( (binary_expression "local_48 <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;)) (case_statement "case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;" case (cast_expression "(undefined4 *)0xc" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) : (expression_statement "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier = (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" identifier (argument_list "(pbVar20,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier )))) ;) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" identifier = (binary_expression "pbVar20 + local_44" identifier + identifier)) ;) (expression_statement "pcVar6 = "  Set ISA to %lu\n";" (assignment_expression "pcVar6 = "  Set ISA to %lu\n"" identifier = (string_literal ""  Set ISA to %lu\n"" " string_content escape_sequence ")) ;) (labeled_statement "code_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);" statement_identifier : (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" identifier (argument_list "(pcVar6,uVar19)" ( identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (break_statement "break;" break ;)) (case_statement "default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" default : (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" identifier = (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ",5)" identifier (argument_list "(0,"  Unknown opcode %d with operands: ",5)" ( number_literal , (string_literal ""  Unknown opcode %d with operands: "" " string_content ") , number_literal ))))) ;) (expression_statement "printf(pcVar6,local_ac);" (call_expression "printf(pcVar6,local_ac)" identifier (argument_list "(pcVar6,local_ac)" ( identifier , identifier ))) ;) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;) (if_statement "if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" if (parenthesized_expression "((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0))" ( (binary_expression "(local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" (parenthesized_expression "(local_90 != 0)" ( (binary_expression "local_90 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" ( (comma_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac)" identifier = (binary_expression "(uint)*(byte *)(local_90 + -1 + (int)local_ac)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(byte *)(local_90 + -1 + (int)local_ac)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + -1 + (int)local_ac)" ( (binary_expression "local_90 + -1 + (int)local_ac" (binary_expression "local_90 + -1" identifier + number_literal) + (cast_expression "(int)local_ac" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) , (binary_expression "uVar19 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" { (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" for ( ; (binary_expression "uVar19 != 1" identifier != number_literal) ; (assignment_expression "uVar19 = uVar19 - 1" identifier = (binary_expression "uVar19 - 1" identifier - number_literal)) ) (compound_statement "{\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" { (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" identifier (argument_list "(local_bc,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007c4b1" & identifier) ))) ;) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" identifier = (binary_expression "local_bc + local_44" identifier + identifier)) ;) })) (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" identifier (argument_list "(local_bc,&local_44,0,pbVar5)" ( identifier , (pointer_expression "&local_44" & identifier) , number_literal , identifier ))) ;) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" identifier = (call_expression "FUN_0004cb50(0)" identifier (argument_list "(0)" ( number_literal )))) ;) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" identifier (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" ( (string_literal ""0x%s%s"" " string_content ") , identifier , (pointer_expression "&DAT_0007bc55" & identifier) ))) ;) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" identifier = (binary_expression "local_bc + local_44" identifier + identifier)) ;) })) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "pbVar20 = local_bc;" (assignment_expression "pbVar20 = local_bc" identifier = identifier) ;) (labeled_statement "code_r0x0005af82:\n              local_bc = pbVar20;" statement_identifier : (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" identifier = identifier) ;)) (if_statement "if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" if (parenthesized_expression "(local_ac == (undefined4 *)0x1)" ( (binary_expression "local_ac == (undefined4 *)0x1" identifier == (cast_expression "(undefined4 *)0x1" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" { (labeled_statement "joined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" statement_identifier : (if_statement "if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" if (parenthesized_expression "(local_b8 == (byte *)0x0)" ( (binary_expression "local_b8 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }" { (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" identifier = (string_literal ""<unknown>"" " string_content ")) ;) (labeled_statement "LAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" statement_identifier : (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar6,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar6,5)" identifier (argument_list "(0,pcVar6,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }) (else_clause "else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" else (compound_statement "{\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" { (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = DAT_000b9d0c - 1;" (assignment_expression "uVar19 = DAT_000b9d0c - 1" identifier = (binary_expression "DAT_000b9d0c - 1" identifier - number_literal)) ;) (if_statement "if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" if (parenthesized_expression "(local_94 <= uVar19)" ( (binary_expression "local_94 <= uVar19" identifier <= identifier) )) (compound_statement "{\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" { (expression_statement "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);" (assignment_expression "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5)" identifier = (call_expression "dcgettext(0,"corrupt file index %u encountered\n",5)" identifier (argument_list "(0,"corrupt file index %u encountered\n",5)" ( number_literal , (string_literal ""corrupt file index %u encountered\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" identifier (argument_list "(uVar11,uVar19)" ( identifier , identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" identifier = (string_literal ""<corrupt>"" " string_content ")) ;) (goto_statement "goto LAB_0005afab;" goto statement_identifier ;) })) (expression_statement "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4)" identifier = (pointer_expression "*(char **)((int)local_b8 + uVar19 * 4 * 4)" * (cast_expression "(char **)((int)local_b8 + uVar19 * 4 * 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" ( (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" identifier * number_literal) * number_literal)) ))))) ;) })))) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "sVar8 = strlen(pcVar6);" (assignment_expression "sVar8 = strlen(pcVar6)" identifier = (call_expression "strlen(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (if_statement "if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" if (parenthesized_expression "(sVar8 < 0x24)" ( (binary_expression "sVar8 < 0x24" identifier < number_literal) )) (compound_statement "{\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" { (expression_statement "pcVar9 = (char *)FUN_0006b190(sVar8 + 1);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(sVar8 + 1)" identifier = (cast_expression "(char *)FUN_0006b190(sVar8 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(sVar8 + 1)" identifier (argument_list "(sVar8 + 1)" ( (binary_expression "sVar8 + 1" identifier + number_literal) ))))) ;) (expression_statement "strncpy(pcVar9,pcVar6,sVar8 + 1);" (call_expression "strncpy(pcVar9,pcVar6,sVar8 + 1)" identifier (argument_list "(pcVar9,pcVar6,sVar8 + 1)" ( identifier , identifier , (binary_expression "sVar8 + 1" identifier + number_literal) ))) ;) (labeled_statement "LAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" statement_identifier : (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" identifier (argument_list "("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" ( (string_literal ""%-35s  %11d  %#18llx"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" else (compound_statement "{\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" { (expression_statement "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" identifier (argument_list "("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" ( (string_literal ""%-35s  %11d  %#18llx[%d]"" " string_content ") , identifier , identifier , identifier , identifier , (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ;) })))) }) (else_clause "else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" else (compound_statement "{\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" { (if_statement "if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" if (parenthesized_expression "(DAT_000b9da4 == 0)" ( (binary_expression "DAT_000b9da4 == 0" identifier == number_literal) )) (compound_statement "{\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }" { (expression_statement "pcVar9 = (char *)FUN_0006b190(0x24);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(0x24)" identifier = (cast_expression "(char *)FUN_0006b190(0x24)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(0x24)" identifier (argument_list "(0x24)" ( number_literal ))))) ;) (expression_statement "__n = 0x24;" (assignment_expression "__n = 0x24" identifier = number_literal) ;) (expression_statement "pcVar6 = pcVar6 + (sVar8 - 0x23);" (assignment_expression "pcVar6 = pcVar6 + (sVar8 - 0x23)" identifier = (binary_expression "pcVar6 + (sVar8 - 0x23)" identifier + (parenthesized_expression "(sVar8 - 0x23)" ( (binary_expression "sVar8 - 0x23" identifier - number_literal) )))) ;) }) (else_clause "else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" else (compound_statement "{\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" { (expression_statement "__n = sVar8 + 1;" (assignment_expression "__n = sVar8 + 1" identifier = (binary_expression "sVar8 + 1" identifier + number_literal)) ;) (expression_statement "pcVar9 = (char *)FUN_0006b190(__n);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(__n)" identifier = (cast_expression "(char *)FUN_0006b190(__n)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0006b190(__n)" identifier (argument_list "(__n)" ( identifier ))))) ;) }))) (expression_statement "strncpy(pcVar9,pcVar6,__n);" (call_expression "strncpy(pcVar9,pcVar6,__n)" identifier (argument_list "(pcVar9,pcVar6,__n)" ( identifier , identifier , identifier ))) ;) (if_statement "if (DAT_000b9da4 == 0) goto LAB_0005ac8b;" if (parenthesized_expression "(DAT_000b9da4 == 0)" ( (binary_expression "DAT_000b9da4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0005ac8b;" goto statement_identifier ;)) (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" if (parenthesized_expression "(local_2c._1_1_ == '\x01')" ( (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" identifier . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" identifier (argument_list "("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" ( (string_literal ""%s  %11d  %#18llx"" " string_content ") , identifier , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" else (compound_statement "{\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" { (expression_statement "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" identifier (argument_list "("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" ( (string_literal ""%s  %11d  %#18llx[%d]"" " string_content ") , identifier , identifier , identifier , identifier , (cast_expression "(uint)(byte)DAT_000b9d20" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(byte)DAT_000b9d20" ( (type_descriptor "byte" type_identifier) ) identifier)) ))) ;) }))) }))) (if_statement "if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" if (parenthesized_expression "(DAT_000b9d08 == 0)" ( (binary_expression "DAT_000b9d08 == 0" identifier == number_literal) )) (compound_statement "{\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) }) (else_clause "else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" else (compound_statement "{\n                  printf("  %6u\n",DAT_000b9d08);\n                }" { (expression_statement "printf("  %6u\n",DAT_000b9d08);" (call_expression "printf("  %6u\n",DAT_000b9d08)" identifier (argument_list "("  %6u\n",DAT_000b9d08)" ( (string_literal ""  %6u\n"" " string_content escape_sequence ") , identifier ))) ;) }))) (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" identifier = (binary_expression "DAT_000b9d08 + 1" identifier + number_literal)) ;) (if_statement "if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" if (parenthesized_expression "(local_ac == (undefined4 *)0xffffffff)" ( (binary_expression "local_ac == (undefined4 *)0xffffffff" identifier == (cast_expression "(undefined4 *)0xffffffff" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" { (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" identifier = (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" identifier >> number_literal) & number_literal)) ;) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" identifier = number_literal) ;) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" identifier = (cast_expression "(undefined1 *)0x1" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" identifier = number_literal) ;) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" identifier = number_literal) ;) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) })) (expression_statement "free(pcVar9);" (call_expression "free(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) }))) })) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" identifier = identifier) ;) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" if (parenthesized_expression "(local_48 <= local_bc)" ( (binary_expression "local_48 <= local_bc" identifier <= identifier) )) (goto_statement "goto LAB_0005adb0;" goto statement_identifier ;)) (goto_statement "goto LAB_0005ad11;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" statement_identifier : (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;)) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" if (parenthesized_expression "(local_b8 != (byte *)0x0)" ( (binary_expression "local_b8 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" { (expression_statement "free(local_b8);" (call_expression "free(local_b8)" identifier (argument_list "(local_b8)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) })) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" if (parenthesized_expression "(local_a4 != (undefined4 *)0x0)" ( (binary_expression "local_a4 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" { (expression_statement "free(local_a4);" (call_expression "free(local_a4)" identifier (argument_list "(local_a4)" ( identifier ))) ;) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier = (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" identifier (argument_list "(DAT_000b9d04,DAT_000b9d00)" ( identifier , identifier )))) ;) })) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" ( (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" identifier = (cast_expression "(uint)lVar29" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" identifier (argument_list "(10,*(FILE **)local_9c)" ( number_literal , (pointer_expression "*(FILE **)local_9c" * (cast_expression "(FILE **)local_9c" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))) ;) (expression_statement "uVar23 = pbVar5 < local_bc;" (assignment_expression "uVar23 = pbVar5 < local_bc" identifier = (binary_expression "pbVar5 < local_bc" identifier < identifier)) ;) (expression_statement "uVar25 = pbVar5 == local_bc;" (assignment_expression "uVar25 = pbVar5 == local_bc" identifier = (binary_expression "pbVar5 == local_bc" identifier == identifier)) ;) (if_statement "if (pbVar5 <= local_bc) {\n          return local_58;\n        }" if (parenthesized_expression "(pbVar5 <= local_bc)" ( (binary_expression "pbVar5 <= local_bc" identifier <= identifier) )) (compound_statement "{\n          return local_58;\n        }" { (return_statement "return local_58;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) })) }) (else_clause "else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" else (if_statement "if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" if (parenthesized_expression "((DAT_000b9db0 & 2) != 0)" ( (binary_expression "(DAT_000b9db0 & 2) != 0" (parenthesized_expression "(DAT_000b9db0 & 2)" ( (binary_expression "DAT_000b9db0 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    FUN_0004eb80();\n  }" { (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" identifier (argument_list "()" ( ))) ;) })))) (return_statement "return 1;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (array_declarator IDENT [ LIT ])) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE 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 = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (do_statement do (compound_statement { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (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)) ;) }) while (parenthesized_expression ( IDENT )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (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)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT & LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (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 ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) & LIT) )) + IDENT) )))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (field_expression IDENT . field_identifier)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , (string_literal " string_content escape_sequence ") , IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_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 *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) 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 string_content escape_sequence string_content escape_sequence string_content escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (pointer_expression * IDENT) == LIT)) ))) )) (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 ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (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 " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence string_content escape_sequence ") , IDENT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) <= IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_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 *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (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)) ;) (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 ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT / (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (char_literal ' escape_sequence ')) )) (compound_statement { (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 + (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (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 (assignment_expression IDENT = (pointer_expression & IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) , (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) , IDENT ))) , (field_expression IDENT . field_identifier) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_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 ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (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 ") , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (string_literal " ")) ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT % (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (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 ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression 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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (goto_statement goto statement_identifier ;) })) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (pointer_expression & 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 , (pointer_expression & IDENT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , 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 ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT & LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) ))) * (parenthesized_expression ( (binary_expression IDENT & LIT) ))) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) , (field_expression IDENT . field_identifier) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (cast_expression ( (type_descriptor TYPE) ) (subscript_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 ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , (pointer_expression & IDENT) ))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (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 , IDENT , IDENT ))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;)) (case_statement case LIT : (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (unary_expression ~ (field_expression IDENT . field_identifier)))) / (call_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT & LIT) )))) ))) * (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (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 ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , (pointer_expression & IDENT) ))) ;) (break_statement break ;)) (case_statement case 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))) , (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (binary_expression IDENT - LIT) < LIT))) ))) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (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 , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;)) (case_statement case 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (break_statement break ;)) (case_statement default : (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 ") ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (for_statement for ( ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT - LIT)) ) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;)) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (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) ))))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (binary_expression (parenthesized_expression ( IDENT )) * 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) )))) ;) }) while (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE) ) IDENT) )) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT)) && (unary_expression ! (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) == (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (string_literal " string_content "))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (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)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (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 ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) == (char_literal ' escape_sequence ')) )) (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 ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , LIT )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= 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 ))) ;) (return_statement return LIT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (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 (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (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 ;) })) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + 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 = (string_literal " string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT * LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (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 *)) ) 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 ))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (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 IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ (binary_expression IDENT - LIT) ]))) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (comma_expression (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 ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (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 = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) ;) })) }) (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 (binary_expression IDENT - LIT) < 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << 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 *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + 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 escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( 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 == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (goto_statement goto statement_identifier ;))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (goto_statement goto statement_identifier ;) }))) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , (subscript_expression IDENT [ LIT ]) , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;)) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = IDENT) ;) })))) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT , LIT , LIT , LIT , LIT , (subscript_expression IDENT [ LIT ]) , LIT , (binary_expression IDENT & LIT) , LIT , LIT , IDENT , LIT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) ;) })) (if_statement if (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 )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (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 ;) })) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (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 + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) ;) })) (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 = LIT) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) || (binary_expression IDENT != IDENT)) )) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor 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 = LIT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (binary_expression IDENT << LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + 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 escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( 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 == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (goto_statement goto statement_identifier ;))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (goto_statement goto statement_identifier ;) }))) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , (subscript_expression IDENT [ LIT ]) , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT ))) ;)) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) })))) }) (else_clause else (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 (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) , (binary_expression LIT < (binary_expression IDENT - LIT))) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;)) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (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) ;) }) (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 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 )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) })))))) })))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , LIT , IDENT , IDENT , LIT , LIT , LIT , LIT , (subscript_expression IDENT [ LIT ]) , LIT , (binary_expression IDENT & LIT) , LIT , LIT , IDENT , LIT , 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 == 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 )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto 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) )) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (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 IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;)) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;)) (expression_statement (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 escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) & LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT % (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT / (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ))) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT / (field_expression IDENT . field_identifier))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT % (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT)) + IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement default : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (goto_statement goto statement_identifier ;))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (goto_statement goto statement_identifier ;) }))) }))) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT * LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT * LIT) + LIT) )) * LIT)) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + IDENT) , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;)) })) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) :) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) :) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (goto_statement goto statement_identifier ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) / (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)))) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT))) )) % (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT * IDENT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT * IDENT) == LIT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " escape_sequence string_content escape_sequence ")) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (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) + (binary_expression (binary_expression IDENT * LIT) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence string_content escape_sequence ") , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " escape_sequence string_content escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " escape_sequence string_content escape_sequence ")) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence string_content escape_sequence ") , (subscript_expression IDENT [ (binary_expression IDENT - LIT) ]) , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }))))) (break_statement break ;) })) (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 , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (string_literal " escape_sequence string_content ")) ;) }))) (goto_statement goto statement_identifier ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression ~ (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) & LIT) ))) / (call_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT & LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) + IDENT) )) / (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier)))) ;) (expression_statement (assignment_expression (field_expression IDENT . field_identifier) = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) + IDENT) )) % (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (field_expression IDENT . field_identifier) , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (break_statement break ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor 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 IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;)) (case_statement case (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (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 *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (break_statement break ;)) (case_statement default : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (for_statement for ( ; (binary_expression IDENT != LIT) ; (assignment_expression IDENT = (binary_expression IDENT - LIT)) ) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (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 : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= 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 ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (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 (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (binary_expression IDENT * LIT) * LIT)) ))))) ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT + LIT) ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT , (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) })))) }) (else_clause else (compound_statement { (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 ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (parenthesized_expression ( (binary_expression IDENT - LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , IDENT , IDENT , IDENT , (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content escape_sequence ") , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = (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 = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) }))) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (return_statement return IDENT ;) })) }) while (parenthesized_expression ( BOOL )) ;)) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })))) (return_statement return LIT ;) })))
(function_definition "undefined4 FUN_0005a8e0(int param_1)\n\n{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" (type_identifier "undefined4") (function_declarator "FUN_0005a8e0(int param_1)" (identifier "FUN_0005a8e0") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  code *pcVar1;\n  undefined *puVar2;\n  undefined1 *puVar3;\n  ushort uVar4;\n  byte *pbVar5;\n  char *pcVar6;\n  byte bVar13;\n  uint uVar7;\n  size_t sVar8;\n  char *pcVar9;\n  int iVar10;\n  undefined4 uVar11;\n  undefined4 uVar12;\n  int iVar14;\n  size_t __n;\n  byte *pbVar15;\n  byte *pbVar16;\n  undefined4 *puVar17;\n  uint uVar18;\n  uint uVar19;\n  byte *pbVar20;\n  bool bVar21;\n  bool bVar22;\n  undefined1 uVar23;\n  bool bVar24;\n  undefined1 uVar25;\n  byte bVar26;\n  ulonglong uVar27;\n  longlong lVar28;\n  longlong lVar29;\n  longlong lVar30;\n  undefined *puVar31;\n  undefined1 *puVar32;\n  byte *local_bc;\n  byte *local_b8;\n  byte *local_b4;\n  uint local_b0;\n  undefined4 *local_ac;\n  undefined4 *local_a4;\n  byte *local_9c;\n  int local_98;\n  uint local_94;\n  int local_90;\n  uint local_8c;\n  undefined1 local_88;\n  uint uStack_84;\n  uint local_7c;\n  uint local_78;\n  char *local_6c;\n  byte *local_60;\n  undefined4 local_58;\n  undefined1 *local_54 [3];\n  byte *local_48;\n  int local_44;\n  undefined4 local_40;\n  undefined4 local_3c;\n  uint local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  undefined4 local_24;\n  uint local_20 [3];\n  undefined4 uStack_14;\n  \n  bVar26 = 0;\n  uStack_14 = 0x5a8e9;\n  local_bc = *(byte **)(param_1 + 0x10);\n  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);\n  if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }\n  uVar11 = *(undefined4 *)(param_1 + 8);\n  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }\n  puVar2 = PTR_stdout_000b3fd8;\n  bVar21 = local_bc < pbVar5;\n  bVar24 = local_bc == pbVar5;\n  local_b4 = local_bc;\n  if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }\n  return 1;\n}" ({ "{") (declaration "code *pcVar1;" (type_identifier "code") (pointer_declarator "*pcVar1" (* "*") (identifier "pcVar1")) (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "undefined1 *puVar3;" (type_identifier "undefined1") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "ushort uVar4;" (type_identifier "ushort") (identifier "uVar4") (; ";")) (declaration "byte *pbVar5;" (type_identifier "byte") (pointer_declarator "*pbVar5" (* "*") (identifier "pbVar5")) (; ";")) (declaration "char *pcVar6;" (primitive_type "char") (pointer_declarator "*pcVar6" (* "*") (identifier "pcVar6")) (; ";")) (declaration "byte bVar13;" (type_identifier "byte") (identifier "bVar13") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "size_t sVar8;" (primitive_type "size_t") (identifier "sVar8") (; ";")) (declaration "char *pcVar9;" (primitive_type "char") (pointer_declarator "*pcVar9" (* "*") (identifier "pcVar9")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "size_t __n;" (primitive_type "size_t") (identifier "__n") (; ";")) (declaration "byte *pbVar15;" (type_identifier "byte") (pointer_declarator "*pbVar15" (* "*") (identifier "pbVar15")) (; ";")) (declaration "byte *pbVar16;" (type_identifier "byte") (pointer_declarator "*pbVar16" (* "*") (identifier "pbVar16")) (; ";")) (declaration "undefined4 *puVar17;" (type_identifier "undefined4") (pointer_declarator "*puVar17" (* "*") (identifier "puVar17")) (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "uint uVar19;" (type_identifier "uint") (identifier "uVar19") (; ";")) (declaration "byte *pbVar20;" (type_identifier "byte") (pointer_declarator "*pbVar20" (* "*") (identifier "pbVar20")) (; ";")) (declaration "bool bVar21;" (primitive_type "bool") (identifier "bVar21") (; ";")) (declaration "bool bVar22;" (primitive_type "bool") (identifier "bVar22") (; ";")) (declaration "undefined1 uVar23;" (type_identifier "undefined1") (identifier "uVar23") (; ";")) (declaration "bool bVar24;" (primitive_type "bool") (identifier "bVar24") (; ";")) (declaration "undefined1 uVar25;" (type_identifier "undefined1") (identifier "uVar25") (; ";")) (declaration "byte bVar26;" (type_identifier "byte") (identifier "bVar26") (; ";")) (declaration "ulonglong uVar27;" (type_identifier "ulonglong") (identifier "uVar27") (; ";")) (declaration "longlong lVar28;" (type_identifier "longlong") (identifier "lVar28") (; ";")) (declaration "longlong lVar29;" (type_identifier "longlong") (identifier "lVar29") (; ";")) (declaration "longlong lVar30;" (type_identifier "longlong") (identifier "lVar30") (; ";")) (declaration "undefined *puVar31;" (type_identifier "undefined") (pointer_declarator "*puVar31" (* "*") (identifier "puVar31")) (; ";")) (declaration "undefined1 *puVar32;" (type_identifier "undefined1") (pointer_declarator "*puVar32" (* "*") (identifier "puVar32")) (; ";")) (declaration "byte *local_bc;" (type_identifier "byte") (pointer_declarator "*local_bc" (* "*") (identifier "local_bc")) (; ";")) (declaration "byte *local_b8;" (type_identifier "byte") (pointer_declarator "*local_b8" (* "*") (identifier "local_b8")) (; ";")) (declaration "byte *local_b4;" (type_identifier "byte") (pointer_declarator "*local_b4" (* "*") (identifier "local_b4")) (; ";")) (declaration "uint local_b0;" (type_identifier "uint") (identifier "local_b0") (; ";")) (declaration "undefined4 *local_ac;" (type_identifier "undefined4") (pointer_declarator "*local_ac" (* "*") (identifier "local_ac")) (; ";")) (declaration "undefined4 *local_a4;" (type_identifier "undefined4") (pointer_declarator "*local_a4" (* "*") (identifier "local_a4")) (; ";")) (declaration "byte *local_9c;" (type_identifier "byte") (pointer_declarator "*local_9c" (* "*") (identifier "local_9c")) (; ";")) (declaration "int local_98;" (primitive_type "int") (identifier "local_98") (; ";")) (declaration "uint local_94;" (type_identifier "uint") (identifier "local_94") (; ";")) (declaration "int local_90;" (primitive_type "int") (identifier "local_90") (; ";")) (declaration "uint local_8c;" (type_identifier "uint") (identifier "local_8c") (; ";")) (declaration "undefined1 local_88;" (type_identifier "undefined1") (identifier "local_88") (; ";")) (declaration "uint uStack_84;" (type_identifier "uint") (identifier "uStack_84") (; ";")) (declaration "uint local_7c;" (type_identifier "uint") (identifier "local_7c") (; ";")) (declaration "uint local_78;" (type_identifier "uint") (identifier "local_78") (; ";")) (declaration "char *local_6c;" (primitive_type "char") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c")) (; ";")) (declaration "byte *local_60;" (type_identifier "byte") (pointer_declarator "*local_60" (* "*") (identifier "local_60")) (; ";")) (declaration "undefined4 local_58;" (type_identifier "undefined4") (identifier "local_58") (; ";")) (declaration "undefined1 *local_54 [3];" (type_identifier "undefined1") (pointer_declarator "*local_54 [3]" (* "*") (array_declarator "local_54 [3]" (identifier "local_54") ([ "[") (number_literal "3") (] "]"))) (; ";")) (declaration "byte *local_48;" (type_identifier "byte") (pointer_declarator "*local_48" (* "*") (identifier "local_48")) (; ";")) (declaration "int local_44;" (primitive_type "int") (identifier "local_44") (; ";")) (declaration "undefined4 local_40;" (type_identifier "undefined4") (identifier "local_40") (; ";")) (declaration "undefined4 local_3c;" (type_identifier "undefined4") (identifier "local_3c") (; ";")) (declaration "uint local_38;" (type_identifier "uint") (identifier "local_38") (; ";")) (declaration "undefined4 local_34;" (type_identifier "undefined4") (identifier "local_34") (; ";")) (declaration "undefined4 local_30;" (type_identifier "undefined4") (identifier "local_30") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (declaration "int local_28;" (primitive_type "int") (identifier "local_28") (; ";")) (declaration "undefined4 local_24;" (type_identifier "undefined4") (identifier "local_24") (; ";")) (declaration "uint local_20 [3];" (type_identifier "uint") (array_declarator "local_20 [3]" (identifier "local_20") ([ "[") (number_literal "3") (] "]")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "bVar26 = 0;" (assignment_expression "bVar26 = 0" (identifier "bVar26") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x5a8e9;" (assignment_expression "uStack_14 = 0x5a8e9" (identifier "uStack_14") (= "=") (number_literal "0x5a8e9")) (; ";")) (expression_statement "local_bc = *(byte **)(param_1 + 0x10);" (assignment_expression "local_bc = *(byte **)(param_1 + 0x10)" (identifier "local_bc") (= "=") (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 "pbVar5 = local_bc + *(int *)(param_1 + 0x1c);" (assignment_expression "pbVar5 = local_bc + *(int *)(param_1 + 0x1c)" (identifier "pbVar5") (= "=") (binary_expression "local_bc + *(int *)(param_1 + 0x1c)" (identifier "local_bc") (+ "+") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")")))))) (; ";")) (if_statement "if (DAT_000b9db0 == 0) {\n    DAT_000b9db0 = 1;\n  }\n  else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" (if "if") (parenthesized_expression "(DAT_000b9db0 == 0)" (( "(") (binary_expression "DAT_000b9db0 == 0" (identifier "DAT_000b9db0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_000b9db0 = 1;\n  }" ({ "{") (expression_statement "DAT_000b9db0 = 1;" (assignment_expression "DAT_000b9db0 = 1" (identifier "DAT_000b9db0") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" (else "else") (if_statement "if ((DAT_000b9db0 & 1) == 0) {\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" (if "if") (parenthesized_expression "((DAT_000b9db0 & 1) == 0)" (( "(") (binary_expression "(DAT_000b9db0 & 1) == 0" (parenthesized_expression "(DAT_000b9db0 & 1)" (( "(") (binary_expression "DAT_000b9db0 & 1" (identifier "DAT_000b9db0") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }\n    FUN_0004eb80();\n    uVar23 = local_bc < pbVar5;\n    uVar25 = local_bc == pbVar5;\n    if (!(bool)uVar23) {\n      return 1;\n    }\n    local_58 = 1;\n    goto LAB_0005a9d0;\n  }" ({ "{") (if_statement "if ((DAT_000b9db0 & 2) == 0) {\n      return 1;\n    }" (if "if") (parenthesized_expression "((DAT_000b9db0 & 2) == 0)" (( "(") (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" (( "(") (binary_expression "DAT_000b9db0 & 2" (identifier "DAT_000b9db0") (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" (identifier "FUN_0004eb80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar23 = local_bc < pbVar5;" (assignment_expression "uVar23 = local_bc < pbVar5" (identifier "uVar23") (= "=") (binary_expression "local_bc < pbVar5" (identifier "local_bc") (< "<") (identifier "pbVar5"))) (; ";")) (expression_statement "uVar25 = local_bc == pbVar5;" (assignment_expression "uVar25 = local_bc == pbVar5" (identifier "uVar25") (= "=") (binary_expression "local_bc == pbVar5" (identifier "local_bc") (== "==") (identifier "pbVar5"))) (; ";")) (if_statement "if (!(bool)uVar23) {\n      return 1;\n    }" (if "if") (parenthesized_expression "(!(bool)uVar23)" (( "(") (unary_expression "!(bool)uVar23" (! "!") (cast_expression "(bool)uVar23" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar23"))) () ")")) (compound_statement "{\n      return 1;\n    }" ({ "{") (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" (identifier "local_58") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0005a9d0;" (goto "goto") (statement_identifier "LAB_0005a9d0") (; ";")) (} "}"))))) (expression_statement "uVar11 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar11 = *(undefined4 *)(param_1 + 8)" (identifier "uVar11") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 8)" (* "*") (cast_expression "(undefined4 *)(param_1 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }\n  else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" (if "if") (parenthesized_expression "((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0))" (( "(") (binary_expression "(DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" (parenthesized_expression "(DAT_000b9d98 == 0)" (( "(") (binary_expression "DAT_000b9d98 == 0" (identifier "DAT_000b9d98") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)" (( "(") (comma_expression "iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0" (assignment_expression "iVar14 = *(int *)(param_1 + 0xc)" (identifier "iVar14") (= "=") (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")"))))) (, ",") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);\n    printf(pcVar6,uVar11);\n  }" ({ "{") (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5)" (identifier "dcgettext") (argument_list "(0,"Raw dump of debug contents of section %s:\n\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Raw dump of debug contents of section %s:\n\n"" (" """) (string_content "Raw dump of debug contents of section %s:") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" (identifier "printf") (argument_list "(pcVar6,uVar11)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" (else "else") (compound_statement "{\n    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;\n    printf(pcVar6,uVar11,iVar14);\n  }" ({ "{") (expression_statement "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)\n    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" (identifier "dcgettext") (argument_list "(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Raw dump of debug contents of section %s (loaded from %s):\n\n"" (" """) (string_content "Raw dump of debug contents of section %s (loaded from %s):") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,iVar14);" (call_expression "printf(pcVar6,uVar11,iVar14)" (identifier "printf") (argument_list "(pcVar6,uVar11,iVar14)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "iVar14") () ")"))) (; ";")) (} "}")))) (expression_statement "puVar2 = PTR_stdout_000b3fd8;" (assignment_expression "puVar2 = PTR_stdout_000b3fd8" (identifier "puVar2") (= "=") (identifier "PTR_stdout_000b3fd8")) (; ";")) (expression_statement "bVar21 = local_bc < pbVar5;" (assignment_expression "bVar21 = local_bc < pbVar5" (identifier "bVar21") (= "=") (binary_expression "local_bc < pbVar5" (identifier "local_bc") (< "<") (identifier "pbVar5"))) (; ";")) (expression_statement "bVar24 = local_bc == pbVar5;" (assignment_expression "bVar24 = local_bc == pbVar5" (identifier "bVar24") (= "=") (binary_expression "local_bc == pbVar5" (identifier "local_bc") (== "==") (identifier "pbVar5"))) (; ";")) (expression_statement "local_b4 = local_bc;" (assignment_expression "local_b4 = local_bc" (identifier "local_b4") (= "=") (identifier "local_bc")) (; ";")) (if_statement "if (bVar21) {\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }\n  else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" (if "if") (parenthesized_expression "(bVar21)" (( "(") (identifier "bVar21") () ")")) (compound_statement "{\nLAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);\n    uVar23 = 0;\n    uVar25 = (DAT_000b9db0 & 2) == 0;\n    if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }\n  }" ({ "{") (labeled_statement "LAB_0005b368:\n    do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" (statement_identifier "LAB_0005b368") (: ":") (do_statement "do {\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    } while (local_b4 < pbVar5);" (do "do") (compound_statement "{\n      iVar14 = 0xc;\n      pbVar20 = *(byte **)(param_1 + 8);\n      pbVar16 = (byte *)".debug_line.";\n      do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);\n      bVar22 = false;\n      bVar21 = (!bVar21 && !bVar24) == bVar21;\n      if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }\n      local_40 = DAT_000b7620;\n      local_3c = DAT_000b7624;\n      local_38 = DAT_000b7628;\n      local_34 = DAT_000b762c;\n      local_30 = DAT_000b7630;\n      local_2c = DAT_000b7634;\n      local_28 = DAT_000b7638;\n      local_24 = DAT_000b763c;\n      local_20[0] = DAT_000b7640;\n      if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }\n      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);\n      printf(pcVar6);\n      bVar21 = pbVar5 < local_b4;\n      bVar24 = pbVar5 == local_b4;\n    }" ({ "{") (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" (identifier "iVar14") (= "=") (number_literal "0xc")) (; ";")) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(byte **)(param_1 + 8)" (identifier "pbVar20") (= "=") (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 "pbVar16 = (byte *)".debug_line.";" (assignment_expression "pbVar16 = (byte *)".debug_line."" (identifier "pbVar16") (= "=") (cast_expression "(byte *)".debug_line."" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_line."" (" """) (string_content ".debug_line.") (" """)))) (; ";")) (do_statement "do {\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      } while (bVar24);" (do "do") (compound_statement "{\n        if (iVar14 == 0) break;\n        iVar14 = iVar14 + -1;\n        bVar21 = *pbVar20 < *pbVar16;\n        bVar24 = *pbVar20 == *pbVar16;\n        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n      }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" (identifier "bVar21") (= "=") (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" (identifier "bVar24") (= "=") (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" (identifier "pbVar16") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (expression_statement "bVar22 = false;" (assignment_expression "bVar22 = false" (identifier "bVar22") (= "=") (false "false")) (; ";")) (expression_statement "bVar21 = (!bVar21 && !bVar24) == bVar21;" (assignment_expression "bVar21 = (!bVar21 && !bVar24) == bVar21" (identifier "bVar21") (= "=") (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" (( "(") (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" (! "!") (identifier "bVar21")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar21"))) (; ";")) (if_statement "if (bVar21) {\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }\n      else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" (if "if") (parenthesized_expression "(bVar21)" (( "(") (identifier "bVar21") () ")")) (compound_statement "{\n        iVar14 = 0x10;\n        pbVar20 = *(byte **)(param_1 + 8);\n        pbVar16 = (byte *)".debug_line.dwo";\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);\n        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;\n        local_20[0] = DAT_000b7640;\n        local_40 = DAT_000b7620;\n        local_3c = DAT_000b7624;\n        local_38 = DAT_000b7628;\n        local_34 = DAT_000b762c;\n        local_30 = DAT_000b7630;\n        local_2c = DAT_000b7634;\n        local_28 = DAT_000b7638;\n        local_24 = DAT_000b763c;\n        if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }\n        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        local_94 = 0;\n        local_48 = pbVar5;\n      }" ({ "{") (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" (identifier "iVar14") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(byte **)(param_1 + 8)" (identifier "pbVar20") (= "=") (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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" (identifier "pbVar16") (= "=") (cast_expression "(byte *)".debug_line.dwo"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_line.dwo"" (" """) (string_content ".debug_line.dwo") (" """)))) (; ";")) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        } while (bVar21);" (do "do") (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          bVar22 = *pbVar20 < *pbVar16;\n          bVar21 = *pbVar20 == *pbVar16;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n        }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar22 = *pbVar20 < *pbVar16;" (assignment_expression "bVar22 = *pbVar20 < *pbVar16" (identifier "bVar22") (= "=") (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "bVar21 = *pbVar20 == *pbVar16;" (assignment_expression "bVar21 = *pbVar20 == *pbVar16" (identifier "bVar21") (= "=") (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" (identifier "pbVar16") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar21)" (( "(") (identifier "bVar21") () ")")) (; ";")) (if_statement "if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;" (if "if") (parenthesized_expression "((!bVar22 && !bVar21) == bVar22)" (( "(") (binary_expression "(!bVar22 && !bVar21) == bVar22" (parenthesized_expression "(!bVar22 && !bVar21)" (( "(") (binary_expression "!bVar22 && !bVar21" (unary_expression "!bVar22" (! "!") (identifier "bVar22")) (&& "&&") (unary_expression "!bVar21" (! "!") (identifier "bVar21"))) () ")")) (== "==") (identifier "bVar22")) () ")")) (goto_statement "goto LAB_0005bd30;" (goto "goto") (statement_identifier "LAB_0005bd30") (; ";"))) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "DAT_000b7640")) (; ";")) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" (identifier "local_40") (= "=") (identifier "DAT_000b7620")) (; ";")) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" (identifier "local_3c") (= "=") (identifier "DAT_000b7624")) (; ";")) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" (identifier "local_38") (= "=") (identifier "DAT_000b7628")) (; ";")) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" (identifier "local_34") (= "=") (identifier "DAT_000b762c")) (; ";")) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" (identifier "local_30") (= "=") (identifier "DAT_000b7630")) (; ";")) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" (identifier "local_2c") (= "=") (identifier "DAT_000b7634")) (; ";")) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" (identifier "local_28") (= "=") (identifier "DAT_000b7638")) (; ";")) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" (identifier "local_24") (= "=") (identifier "DAT_000b763c")) (; ";")) (if_statement "if ((char)DAT_000b763c == '\0') {\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" (if "if") (parenthesized_expression "((char)DAT_000b763c == '\0')" (( "(") (binary_expression "(char)DAT_000b763c == '\0'" (cast_expression "(char)DAT_000b763c" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "DAT_000b763c")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";\n          local_48 = pbVar5;\nLAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);\n          warn(uVar11);\n          goto LAB_0005d6b6;\n        }" ({ "{") (expression_statement "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n";" (assignment_expression "pcVar6 = \n          "Partial .debug_line. section encountered without a prior full .debug_line section\n"" (identifier "pcVar6") (= "=") (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" (" """) (string_content "Partial .debug_line. section encountered without a prior full .debug_line section") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" (identifier "local_48") (= "=") (identifier "pbVar5")) (; ";")) (labeled_statement "LAB_0005d6a3:\n          uVar11 = dcgettext(0,pcVar6,5);" (statement_identifier "LAB_0005d6a3") (: ":") (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,pcVar6,5)" (identifier "dcgettext") (argument_list "(0,pcVar6,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (goto_statement "goto LAB_0005d6b6;" (goto "goto") (statement_identifier "LAB_0005d6b6") (; ";")) (} "}"))) (expression_statement "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff" (identifier "DAT_000b9d18") (= "=") (binary_expression "DAT_000b7634 >> 0x10 & 0xff" (binary_expression "DAT_000b7634 >> 0x10" (identifier "DAT_000b7634") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" (identifier "DAT_000b9d00") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" (identifier "DAT_000b9d04") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" (identifier "DAT_000b9d0c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" (identifier "DAT_000b9d10") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" (identifier "DAT_000b9d14") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" (identifier "DAT_000b9d1c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" (identifier "DAT_000b9d20") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" (identifier "DAT_000b9d24") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" (identifier "local_48") (= "=") (identifier "pbVar5")) (; ";")) (} "}")) (else_clause "else {\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" (else "else") (compound_statement "{\nLAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);\n        if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }\n        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);\n        printf(pcVar6,(int)local_b4 - (int)local_bc);\n        uVar11 = local_40;\n        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_38 & 0xffff;\n        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar11 = local_34;\n        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);\n        printf(pcVar6,uVar11);\n        uVar19 = local_2c & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);\n        printf(pcVar6,uVar19);\n        if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }\n        uVar19 = local_2c >> 0x10;\n        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        iVar14 = local_28;\n        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);\n        printf(pcVar6,iVar14);\n        uVar19 = local_24 & 0xff;\n        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);\n        printf(pcVar6,uVar19);\n        uVar19 = local_24 >> 8;\n        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);\n        printf(pcVar6,uVar19 & 0xff);\n        if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }\n        DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n        DAT_000b9d00 = 0;\n        DAT_000b9d04 = 0;\n        DAT_000b9d08 = 0;\n        DAT_000b9d0c = 1;\n        DAT_000b9d10 = (undefined1 *)0x1;\n        DAT_000b9d14 = 0;\n        DAT_000b9d1c = 0;\n        DAT_000b9d20 = 0;\n        DAT_000b9d24 = 0;\n        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }\n        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);\n        printf(pcVar6);\n        uVar19 = (uint)local_24._1_1_;\n        if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }\n        pbVar20 = (byte *)(local_94 + -1 + uVar19);\n        if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        DAT_000b7620 = local_40;\n        DAT_000b7624 = local_3c;\n        DAT_000b7628 = local_38;\n        DAT_000b762c = local_34;\n        DAT_000b7630 = local_30;\n        DAT_000b7634 = local_2c;\n        DAT_000b7638 = local_28;\n        DAT_000b763c = local_24;\n        DAT_000b7640 = local_20[0];\n      }" ({ "{") (labeled_statement "LAB_0005bd30:\n        local_94 = FUN_0004d730(&local_40,&local_48);" (statement_identifier "LAB_0005bd30") (: ":") (expression_statement "local_94 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_94 = FUN_0004d730(&local_40,&local_48)" (identifier "local_94") (= "=") (call_expression "FUN_0004d730(&local_40,&local_48)" (identifier "FUN_0004d730") (argument_list "(&local_40,&local_48)" (( "(") (pointer_expression "&local_40" (& "&") (identifier "local_40")) (, ",") (pointer_expression "&local_48" (& "&") (identifier "local_48")) () ")")))) (; ";"))) (if_statement "if (local_94 == 0) {\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" (if "if") (parenthesized_expression "(local_94 == 0)" (( "(") (binary_expression "local_94 == 0" (identifier "local_94") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0005d6b6:\n          uVar23 = 0;\n          uVar25 = (DAT_000b9db0 & 2) == 0;\n          if ((bool)uVar25) {\n            return 0;\n          }\n          FUN_0004eb80();\n          local_58 = 0;\n          goto LAB_0005a9d0;\n        }" ({ "{") (labeled_statement "LAB_0005d6b6:\n          uVar23 = 0;" (statement_identifier "LAB_0005d6b6") (: ":") (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";"))) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" (identifier "uVar25") (= "=") (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" (( "(") (binary_expression "DAT_000b9db0 & 2" (identifier "DAT_000b9db0") (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if ((bool)uVar25) {\n            return 0;\n          }" (if "if") (parenthesized_expression "((bool)uVar25)" (( "(") (cast_expression "(bool)uVar25" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar25")) () ")")) (compound_statement "{\n            return 0;\n          }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" (identifier "FUN_0004eb80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" (identifier "local_58") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0005a9d0;" (goto "goto") (statement_identifier "LAB_0005a9d0") (; ";")) (} "}"))) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Offset:                      0x%lx\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Offset:                      0x%lx\n",5)" (identifier "dcgettext") (argument_list "(0,"  Offset:                      0x%lx\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Offset:                      0x%lx\n"" (" """) (string_content "  Offset:                      0x%lx") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" (identifier "printf") (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")) (- "-") (cast_expression "(int)local_bc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_bc"))) () ")"))) (; ";")) (expression_statement "uVar11 = local_40;" (assignment_expression "uVar11 = local_40" (identifier "uVar11") (= "=") (identifier "local_40")) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Length:                      %ld\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Length:                      %ld\n",5)" (identifier "dcgettext") (argument_list "(0,"  Length:                      %ld\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Length:                      %ld\n"" (" """) (string_content "  Length:                      %ld") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" (identifier "printf") (argument_list "(pcVar6,uVar11)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "uVar19 = local_38 & 0xffff;" (assignment_expression "uVar19 = local_38 & 0xffff" (identifier "uVar19") (= "=") (binary_expression "local_38 & 0xffff" (identifier "local_38") (& "&") (number_literal "0xffff"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  DWARF Version:               %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  DWARF Version:               %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  DWARF Version:               %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  DWARF Version:               %d\n"" (" """) (string_content "  DWARF Version:               %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" (identifier "printf") (argument_list "(pcVar6,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "uVar11 = local_34;" (assignment_expression "uVar11 = local_34" (identifier "uVar11") (= "=") (identifier "local_34")) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Prologue Length:             %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Prologue Length:             %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Prologue Length:             %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Prologue Length:             %d\n"" (" """) (string_content "  Prologue Length:             %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" (identifier "printf") (argument_list "(pcVar6,uVar11)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Minimum Instruction Length:  %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Minimum Instruction Length:  %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Minimum Instruction Length:  %d\n"" (" """) (string_content "  Minimum Instruction Length:  %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" (identifier "printf") (argument_list "(pcVar6,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar19") () ")"))) (; ";")) (if_statement "if (3 < (ushort)local_38) {\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" (if "if") (parenthesized_expression "(3 < (ushort)local_38)" (( "(") (binary_expression "3 < (ushort)local_38" (number_literal "3") (< "<") (cast_expression "(ushort)local_38" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "local_38"))) () ")")) (compound_statement "{\n          uVar19 = local_2c >> 8;\n          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);\n          printf(pcVar6,uVar19 & 0xff);\n        }" ({ "{") (expression_statement "uVar19 = local_2c >> 8;" (assignment_expression "uVar19 = local_2c >> 8" (identifier "uVar19") (= "=") (binary_expression "local_2c >> 8" (identifier "local_2c") (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Maximum Ops per Instruction: %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Maximum Ops per Instruction: %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Maximum Ops per Instruction: %d\n"" (" """) (string_content "  Maximum Ops per Instruction: %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" (identifier "printf") (argument_list "(pcVar6,uVar19 & 0xff)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "uVar19 & 0xff" (identifier "uVar19") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (} "}"))) (expression_statement "uVar19 = local_2c >> 0x10;" (assignment_expression "uVar19 = local_2c >> 0x10" (identifier "uVar19") (= "=") (binary_expression "local_2c >> 0x10" (identifier "local_2c") (>> ">>") (number_literal "0x10"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Initial value of \'is_stmt\':  %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Initial value of \'is_stmt\':  %d\n"" (" """) (string_content "  Initial value of ") (escape_sequence "\'") (string_content "is_stmt") (escape_sequence "\'") (string_content ":  %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" (identifier "printf") (argument_list "(pcVar6,uVar19 & 0xff)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "uVar19 & 0xff" (identifier "uVar19") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (expression_statement "iVar14 = local_28;" (assignment_expression "iVar14 = local_28" (identifier "iVar14") (= "=") (identifier "local_28")) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Line Base:                   %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Line Base:                   %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Line Base:                   %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Line Base:                   %d\n"" (" """) (string_content "  Line Base:                   %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,iVar14);" (call_expression "printf(pcVar6,iVar14)" (identifier "printf") (argument_list "(pcVar6,iVar14)" (( "(") (identifier "pcVar6") (, ",") (identifier "iVar14") () ")"))) (; ";")) (expression_statement "uVar19 = local_24 & 0xff;" (assignment_expression "uVar19 = local_24 & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_24 & 0xff" (identifier "local_24") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Line Range:                  %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Line Range:                  %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Line Range:                  %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Line Range:                  %d\n"" (" """) (string_content "  Line Range:                  %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" (identifier "printf") (argument_list "(pcVar6,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "uVar19 = local_24 >> 8;" (assignment_expression "uVar19 = local_24 >> 8" (identifier "uVar19") (= "=") (binary_expression "local_24 >> 8" (identifier "local_24") (>> ">>") (number_literal "8"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Opcode Base:                 %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Opcode Base:                 %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Opcode Base:                 %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Opcode Base:                 %d\n"" (" """) (string_content "  Opcode Base:                 %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19 & 0xff);" (call_expression "printf(pcVar6,uVar19 & 0xff)" (identifier "printf") (argument_list "(pcVar6,uVar19 & 0xff)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "uVar19 & 0xff" (identifier "uVar19") (& "&") (number_literal "0xff")) () ")"))) (; ";")) (if_statement "if ((byte)local_24 == '\0') {\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" (if "if") (parenthesized_expression "((byte)local_24 == '\0')" (( "(") (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n          warn(uVar11);\n          local_24 = CONCAT31(local_24._1_3_,1);\n        }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" (identifier "dcgettext") (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Line range of 0 is invalid, using 1 instead\n"" (" """) (string_content "Line range of 0 is invalid, using 1 instead") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" (identifier "local_24") (= "=") (call_expression "CONCAT31(local_24._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_24._1_3_,1)" (( "(") (field_expression "local_24._1_3_" (identifier "local_24") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")")))) (; ";")) (} "}"))) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" (identifier "DAT_000b9d18") (= "=") (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" (identifier "local_2c") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" (identifier "DAT_000b9d00") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" (identifier "DAT_000b9d04") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" (identifier "DAT_000b9d0c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" (identifier "DAT_000b9d10") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" (identifier "DAT_000b9d14") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" (identifier "DAT_000b9d1c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" (identifier "DAT_000b9d20") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" (identifier "DAT_000b9d24") (= "=") (number_literal "0")) (; ";")) (if_statement "if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" (if "if") (parenthesized_expression "(pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94))" (( "(") (binary_expression "pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)" (identifier "pbVar5") (<= "<=") (cast_expression "(byte *)((local_24 >> 8 & 0xff) + local_94)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((local_24 >> 8 & 0xff) + local_94)" (( "(") (binary_expression "(local_24 >> 8 & 0xff) + local_94" (parenthesized_expression "(local_24 >> 8 & 0xff)" (( "(") (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" (identifier "local_24") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff")) () ")")) (+ "+") (identifier "local_94")) () ")")))) () ")")) (compound_statement "{\n          pcVar6 = "Line Base extends beyond end of section\n";\n          goto LAB_0005d6a3;\n        }" ({ "{") (expression_statement "pcVar6 = "Line Base extends beyond end of section\n";" (assignment_expression "pcVar6 = "Line Base extends beyond end of section\n"" (identifier "pcVar6") (= "=") (string_literal ""Line Base extends beyond end of section\n"" (" """) (string_content "Line Base extends beyond end of section") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0005d6a3;" (goto "goto") (statement_identifier "LAB_0005d6a3") (; ";")) (} "}"))) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n Opcodes:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n Opcodes:\n",5)" (identifier "dcgettext") (argument_list "(0,"\n Opcodes:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n Opcodes:\n"" (" """) (escape_sequence "\n") (string_content " Opcodes:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "uVar19 = (uint)local_24._1_1_;" (assignment_expression "uVar19 = (uint)local_24._1_1_" (identifier "uVar19") (= "=") (cast_expression "(uint)local_24._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")))) (; ";")) (if_statement "if (1 < local_24._1_1_) {\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" (if "if") (parenthesized_expression "(1 < local_24._1_1_)" (( "(") (binary_expression "1 < local_24._1_1_" (number_literal "1") (< "<") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_"))) () ")")) (compound_statement "{\n          iVar14 = 1;\n          do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);\n        }" ({ "{") (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";")) (do_statement "do {\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          } while (iVar10 < (int)uVar19);" (do "do") (compound_statement "{\n            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);\n            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);\n            iVar10 = iVar14 + 1;\n            printf(pcVar6,iVar14,uVar19);\n            uVar19 = local_24 >> 8 & 0xff;\n            iVar14 = iVar10;\n          }" ({ "{") (expression_statement "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14)" (identifier "uVar19") (= "=") (binary_expression "(uint)*(byte *)(local_94 + -1 + iVar14)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(local_94 + -1 + iVar14)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94 + -1 + iVar14)" (( "(") (binary_expression "local_94 + -1 + iVar14" (binary_expression "local_94 + -1" (identifier "local_94") (+ "+") (number_literal "-1")) (+ "+") (identifier "iVar14")) () ")"))))) (; ";")) (expression_statement "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5);" (assignment_expression "pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" (identifier "dcngettext") (argument_list "(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",\n                                        uVar19,5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Opcode %d has %d arg\n"" (" """) (string_content "  Opcode %d has %d arg") (escape_sequence "\n") (" """)) (, ",") (string_literal ""  Opcode %d has %d args\n"" (" """) (string_content "  Opcode %d has %d args") (escape_sequence "\n") (" """)) (, ",") (identifier "uVar19") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "iVar10 = iVar14 + 1;" (assignment_expression "iVar10 = iVar14 + 1" (identifier "iVar10") (= "=") (binary_expression "iVar14 + 1" (identifier "iVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "printf(pcVar6,iVar14,uVar19);" (call_expression "printf(pcVar6,iVar14,uVar19)" (identifier "printf") (argument_list "(pcVar6,iVar14,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "iVar14") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" (identifier "local_24") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "iVar14 = iVar10;" (assignment_expression "iVar14 = iVar10" (identifier "iVar14") (= "=") (identifier "iVar10")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar10 < (int)uVar19)" (( "(") (binary_expression "iVar10 < (int)uVar19" (identifier "iVar10") (< "<") (cast_expression "(int)uVar19" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar19"))) () ")")) (; ";")) (} "}"))) (expression_statement "pbVar20 = (byte *)(local_94 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_94 + -1 + uVar19)" (identifier "pbVar20") (= "=") (cast_expression "(byte *)(local_94 + -1 + uVar19)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94 + -1 + uVar19)" (( "(") (binary_expression "local_94 + -1 + uVar19" (binary_expression "local_94 + -1" (identifier "local_94") (+ "+") (number_literal "-1")) (+ "+") (identifier "uVar19")) () ")")))) (; ";")) (if_statement "if ((ushort)local_38 < 5) {\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }\n        else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" (if "if") (parenthesized_expression "((ushort)local_38 < 5)" (( "(") (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "local_38")) (< "<") (number_literal "5")) () ")")) (compound_statement "{\n          if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }\nLAB_0005c031:\n          local_b4 = local_b4 + 1;\n        }" ({ "{") (if_statement "if (*pbVar20 == 0) {\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }\n          else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" (if "if") (parenthesized_expression "(*pbVar20 == 0)" (( "(") (binary_expression "*pbVar20 == 0" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            local_b4 = pbVar20 + 1;\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);\n            printf(pcVar6);\n            if (pbVar20[1] == 0) goto LAB_0005c013;\nLAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)local_b4 - (int)local_bc);\n            pbVar16 = (byte *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);\n            printf(pcVar6);\n            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }\n          }" ({ "{") (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" (identifier "local_b4") (= "=") (binary_expression "pbVar20 + 1" (identifier "pbVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n The Directory Table is empty.\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n The Directory Table is empty.\n",5)" (identifier "dcgettext") (argument_list "(0,"\n The Directory Table is empty.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n The Directory Table is empty.\n"" (" """) (escape_sequence "\n") (string_content " The Directory Table is empty.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (if_statement "if (pbVar20[1] == 0) goto LAB_0005c013;" (if "if") (parenthesized_expression "(pbVar20[1] == 0)" (( "(") (binary_expression "pbVar20[1] == 0" (subscript_expression "pbVar20[1]" (identifier "pbVar20") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005c013;" (goto "goto") (statement_identifier "LAB_0005c013") (; ";"))) (labeled_statement "LAB_0005d01c:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" (statement_identifier "LAB_0005d01c") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5)" (identifier "dcgettext") (argument_list "(0,"\n The File Name Table (offset 0x%lx):\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n The File Name Table (offset 0x%lx):\n"" (" """) (escape_sequence "\n") (string_content " The File Name Table (offset 0x%lx):") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";"))) (expression_statement "printf(pcVar6,(int)local_b4 - (int)local_bc);" (call_expression "printf(pcVar6,(int)local_b4 - (int)local_bc)" (identifier "printf") (argument_list "(pcVar6,(int)local_b4 - (int)local_bc)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "(int)local_b4 - (int)local_bc" (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")) (- "-") (cast_expression "(int)local_bc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_bc"))) () ")"))) (; ";")) (expression_statement "pbVar16 = (byte *)0x5;" (assignment_expression "pbVar16 = (byte *)0x5" (identifier "pbVar16") (= "=") (cast_expression "(byte *)0x5" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5)" (identifier "dcgettext") (argument_list "(0,"  Entry\tDir\tTime\tSize\tName\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Entry\tDir\tTime\tSize\tName\n"" (" """) (string_content "  Entry") (escape_sequence "\t") (string_content "Dir") (escape_sequence "\t") (string_content "Time") (escape_sequence "\t") (string_content "Size") (escape_sequence "\t") (string_content "Name") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (if_statement "if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" (if "if") (parenthesized_expression "((local_b4 < pbVar5) && (pbVar20[1] != 0))" (( "(") (binary_expression "(local_b4 < pbVar5) && (pbVar20[1] != 0)" (parenthesized_expression "(local_b4 < pbVar5)" (( "(") (binary_expression "local_b4 < pbVar5" (identifier "local_b4") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(pbVar20[1] != 0)" (( "(") (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" (identifier "pbVar20") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n              pbVar20 = local_b4;\n              while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }\n              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);\n              warn(uVar11);\n              local_b4 = pbVar5;\n            }" ({ "{") (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" (identifier "pbVar20") (= "=") (identifier "local_b4")) (; ";")) (while_statement "while( true ) {\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                printf("  %d\t",DAT_000b9d24,pbVar16);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                local_b4 = pbVar20 + sVar8 + 1;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("%s\t",uVar11);\n                local_b4 = local_b4 + local_44;\n                pbVar16 = pbVar20;\n                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);\n                if (pbVar5 == local_b4) break;\n                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;\n              }" ({ "{") (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" (identifier "DAT_000b9d24") (= "=") (binary_expression "DAT_000b9d24 + 1" (identifier "DAT_000b9d24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "printf("  %d\t",DAT_000b9d24,pbVar16);" (call_expression "printf("  %d\t",DAT_000b9d24,pbVar16)" (identifier "printf") (argument_list "("  %d\t",DAT_000b9d24,pbVar16)" (( "(") (string_literal ""  %d\t"" (" """) (string_content "  %d") (escape_sequence "\t") (" """)) (, ",") (identifier "DAT_000b9d24") (, ",") (identifier "pbVar16") () ")"))) (; ";")) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "strnlen") (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (( "(") (cast_expression "(char *)pbVar20" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar20")) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20"))) () ")")))) (; ";")) (expression_statement "local_b4 = pbVar20 + sVar8 + 1;" (assignment_expression "local_b4 = pbVar20 + sVar8 + 1" (identifier "local_b4") (= "=") (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" (identifier "pbVar20") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" (identifier "printf") (argument_list "("%s\t",uVar11)" (( "(") (string_literal ""%s\t"" (" """) (string_content "%s") (escape_sequence "\t") (" """)) (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" (identifier "printf") (argument_list "("%s\t",uVar11)" (( "(") (string_literal ""%s\t"" (" """) (string_content "%s") (escape_sequence "\t") (" """)) (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("%s\t",uVar11);" (call_expression "printf("%s\t",uVar11)" (identifier "printf") (argument_list "("%s\t",uVar11)" (( "(") (string_literal ""%s\t"" (" """) (string_content "%s") (escape_sequence "\t") (" """)) (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" (identifier "pbVar16") (= "=") (identifier "pbVar20")) (; ";")) (expression_statement "printf("%.*s\n",(int)pbVar5 - (int)pbVar20);" (call_expression "printf("%.*s\n",(int)pbVar5 - (int)pbVar20)" (identifier "printf") (argument_list "("%.*s\n",(int)pbVar5 - (int)pbVar20)" (( "(") (string_literal ""%.*s\n"" (" """) (string_content "%.*s") (escape_sequence "\n") (" """)) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20"))) () ")"))) (; ";")) (if_statement "if (pbVar5 == local_b4) break;" (if "if") (parenthesized_expression "(pbVar5 == local_b4)" (( "(") (binary_expression "pbVar5 == local_b4" (identifier "pbVar5") (== "==") (identifier "local_b4")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;" (if "if") (parenthesized_expression "((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0))" (( "(") (binary_expression "(pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)" (parenthesized_expression "(pbVar5 <= local_b4)" (( "(") (binary_expression "pbVar5 <= local_b4" (identifier "pbVar5") (<= "<=") (identifier "local_b4")) () ")")) (|| "||") (parenthesized_expression "(pbVar20 = local_b4, *local_b4 == 0)" (( "(") (comma_expression "pbVar20 = local_b4, *local_b4 == 0" (assignment_expression "pbVar20 = local_b4" (identifier "pbVar20") (= "=") (identifier "local_b4")) (, ",") (binary_expression "*local_b4 == 0" (pointer_expression "*local_b4" (* "*") (identifier "local_b4")) (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_0005c031;" (goto "goto") (statement_identifier "LAB_0005c031") (; ";"))) (} "}"))) (expression_statement "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name table entry\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Corrupt file name table entry\n",5)" (identifier "dcgettext") (argument_list "(0,"Corrupt file name table entry\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Corrupt file name table entry\n"" (" """) (string_content "Corrupt file name table entry") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_b4 = pbVar5;" (assignment_expression "local_b4 = pbVar5" (identifier "local_b4") (= "=") (identifier "pbVar5")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" (else "else") (compound_statement "{\n            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);\n            printf(pcVar6,(int)pbVar20 - (int)local_bc);\n            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }\n            if (pbVar5 + -1 <= pbVar20) break;\n            local_b4 = pbVar20 + 1;\n            if (pbVar20[1] != 0) goto LAB_0005d01c;\nLAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);\n            printf(pcVar6);\n          }" ({ "{") (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5)" (identifier "dcgettext") (argument_list "(0,"\n The Directory Table (offset 0x%lx):\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n The Directory Table (offset 0x%lx):\n"" (" """) (escape_sequence "\n") (string_content " The Directory Table (offset 0x%lx):") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,(int)pbVar20 - (int)local_bc);" (call_expression "printf(pcVar6,(int)pbVar20 - (int)local_bc)" (identifier "printf") (argument_list "(pcVar6,(int)pbVar20 - (int)local_bc)" (( "(") (identifier "pcVar6") (, ",") (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")) (- "-") (cast_expression "(int)local_bc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_bc"))) () ")"))) (; ";")) (if_statement "if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" (if "if") (parenthesized_expression "((pbVar20 < pbVar5) && (*pbVar20 != 0))" (( "(") (binary_expression "(pbVar20 < pbVar5) && (*pbVar20 != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" (( "(") (binary_expression "pbVar20 < pbVar5" (identifier "pbVar20") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(*pbVar20 != 0)" (( "(") (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n              iVar14 = 0;\n              do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);\n            }" ({ "{") (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" (identifier "iVar14") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              } while (*pbVar20 != 0);" (do "do") (compound_statement "{\n                iVar14 = iVar14 + 1;\n                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                if (pbVar5 <= pbVar20) break;\n              }" ({ "{") (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + 1" (identifier "iVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);" (call_expression "printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" (identifier "printf") (argument_list "("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20)" (( "(") (string_literal ""  %d\t%.*s\n"" (" """) (string_content "  %d") (escape_sequence "\t") (string_content "%.*s") (escape_sequence "\n") (" """)) (, ",") (identifier "iVar14") (, ",") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20"))) (, ",") (identifier "pbVar20") () ")"))) (; ";")) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "strnlen") (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (( "(") (cast_expression "(char *)pbVar20" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar20")) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20"))) () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" (identifier "pbVar20") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pbVar5 <= pbVar20) break;" (if "if") (parenthesized_expression "(pbVar5 <= pbVar20)" (( "(") (binary_expression "pbVar5 <= pbVar20" (identifier "pbVar5") (<= "<=") (identifier "pbVar20")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (while "while") (parenthesized_expression "(*pbVar20 != 0)" (( "(") (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}"))) (if_statement "if (pbVar5 + -1 <= pbVar20) break;" (if "if") (parenthesized_expression "(pbVar5 + -1 <= pbVar20)" (( "(") (binary_expression "pbVar5 + -1 <= pbVar20" (binary_expression "pbVar5 + -1" (identifier "pbVar5") (+ "+") (number_literal "-1")) (<= "<=") (identifier "pbVar20")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" (identifier "local_b4") (= "=") (binary_expression "pbVar20 + 1" (identifier "pbVar20") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pbVar20[1] != 0) goto LAB_0005d01c;" (if "if") (parenthesized_expression "(pbVar20[1] != 0)" (( "(") (binary_expression "pbVar20[1] != 0" (subscript_expression "pbVar20[1]" (identifier "pbVar20") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005d01c;" (goto "goto") (statement_identifier "LAB_0005d01c") (; ";"))) (labeled_statement "LAB_0005c013:\n            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" (statement_identifier "LAB_0005c013") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n The File Name Table is empty.\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n The File Name Table is empty.\n",5)" (identifier "dcgettext") (argument_list "(0,"\n The File Name Table is empty.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n The File Name Table is empty.\n"" (" """) (escape_sequence "\n") (string_content " The File Name Table is empty.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";"))) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (} "}")))) (labeled_statement "LAB_0005c031:\n          local_b4 = local_b4 + 1;" (statement_identifier "LAB_0005c031") (: ":") (expression_statement "local_b4 = local_b4 + 1;" (assignment_expression "local_b4 = local_b4 + 1" (identifier "local_b4") (= "=") (binary_expression "local_b4 + 1" (identifier "local_b4") (+ "+") (number_literal "1"))) (; ";"))) (} "}")) (else_clause "else {\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" (else "else") (compound_statement "{\n          FUN_0004e130();\n          uVar11 = dcgettext(0,"Directory",5);\n          FUN_0005a380(&local_38,local_20,param_1,uVar11);\n          uVar11 = dcgettext(0,"File name",5);\n          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);\n        }" ({ "{") (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" (identifier "FUN_0004e130") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext(0,"Directory",5);" (assignment_expression "uVar11 = dcgettext(0,"Directory",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Directory",5)" (identifier "dcgettext") (argument_list "(0,"Directory",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Directory"" (" """) (string_content "Directory") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0005a380(&local_38,local_20,param_1,uVar11);" (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" (identifier "FUN_0005a380") (argument_list "(&local_38,local_20,param_1,uVar11)" (( "(") (pointer_expression "&local_38" (& "&") (identifier "local_38")) (, ",") (identifier "local_20") (, ",") (identifier "param_1") (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "uVar11 = dcgettext(0,"File name",5);" (assignment_expression "uVar11 = dcgettext(0,"File name",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"File name",5)" (identifier "dcgettext") (argument_list "(0,"File name",5)" (( "(") (number_literal "0") (, ",") (string_literal ""File name"" (" """) (string_content "File name") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);" (assignment_expression "local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" (identifier "local_b4") (= "=") (cast_expression "(byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0005a380(&local_38,local_20,param_1,uVar11)" (identifier "FUN_0005a380") (argument_list "(&local_38,local_20,param_1,uVar11)" (( "(") (pointer_expression "&local_38" (& "&") (identifier "local_38")) (, ",") (identifier "local_20") (, ",") (identifier "param_1") (, ",") (identifier "uVar11") () ")"))))) (; ";")) (} "}")))) (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" (identifier "putc") (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" (* "*") (cast_expression "(FILE **)PTR_stdout_000b3fd8" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_000b3fd8"))) () ")"))) (; ";")) (expression_statement "DAT_000b7620 = local_40;" (assignment_expression "DAT_000b7620 = local_40" (identifier "DAT_000b7620") (= "=") (identifier "local_40")) (; ";")) (expression_statement "DAT_000b7624 = local_3c;" (assignment_expression "DAT_000b7624 = local_3c" (identifier "DAT_000b7624") (= "=") (identifier "local_3c")) (; ";")) (expression_statement "DAT_000b7628 = local_38;" (assignment_expression "DAT_000b7628 = local_38" (identifier "DAT_000b7628") (= "=") (identifier "local_38")) (; ";")) (expression_statement "DAT_000b762c = local_34;" (assignment_expression "DAT_000b762c = local_34" (identifier "DAT_000b762c") (= "=") (identifier "local_34")) (; ";")) (expression_statement "DAT_000b7630 = local_30;" (assignment_expression "DAT_000b7630 = local_30" (identifier "DAT_000b7630") (= "=") (identifier "local_30")) (; ";")) (expression_statement "DAT_000b7634 = local_2c;" (assignment_expression "DAT_000b7634 = local_2c" (identifier "DAT_000b7634") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "DAT_000b7638 = local_28;" (assignment_expression "DAT_000b7638 = local_28" (identifier "DAT_000b7638") (= "=") (identifier "local_28")) (; ";")) (expression_statement "DAT_000b763c = local_24;" (assignment_expression "DAT_000b763c = local_24" (identifier "DAT_000b763c") (= "=") (identifier "local_24")) (; ";")) (expression_statement "DAT_000b7640 = local_20[0];" (assignment_expression "DAT_000b7640 = local_20[0]" (identifier "DAT_000b7640") (= "=") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (; ";")) (} "}")))) (expression_statement "local_40 = DAT_000b7620;" (assignment_expression "local_40 = DAT_000b7620" (identifier "local_40") (= "=") (identifier "DAT_000b7620")) (; ";")) (expression_statement "local_3c = DAT_000b7624;" (assignment_expression "local_3c = DAT_000b7624" (identifier "local_3c") (= "=") (identifier "DAT_000b7624")) (; ";")) (expression_statement "local_38 = DAT_000b7628;" (assignment_expression "local_38 = DAT_000b7628" (identifier "local_38") (= "=") (identifier "DAT_000b7628")) (; ";")) (expression_statement "local_34 = DAT_000b762c;" (assignment_expression "local_34 = DAT_000b762c" (identifier "local_34") (= "=") (identifier "DAT_000b762c")) (; ";")) (expression_statement "local_30 = DAT_000b7630;" (assignment_expression "local_30 = DAT_000b7630" (identifier "local_30") (= "=") (identifier "DAT_000b7630")) (; ";")) (expression_statement "local_2c = DAT_000b7634;" (assignment_expression "local_2c = DAT_000b7634" (identifier "local_2c") (= "=") (identifier "DAT_000b7634")) (; ";")) (expression_statement "local_28 = DAT_000b7638;" (assignment_expression "local_28 = DAT_000b7638" (identifier "local_28") (= "=") (identifier "DAT_000b7638")) (; ";")) (expression_statement "local_24 = DAT_000b763c;" (assignment_expression "local_24 = DAT_000b763c" (identifier "local_24") (= "=") (identifier "DAT_000b763c")) (; ";")) (expression_statement "local_20[0] = DAT_000b7640;" (assignment_expression "local_20[0] = DAT_000b7640" (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "DAT_000b7640")) (; ";")) (if_statement "if (local_b4 < local_48) {\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" (if "if") (parenthesized_expression "(local_b4 < local_48)" (( "(") (binary_expression "local_b4 < local_48" (identifier "local_b4") (< "<") (identifier "local_48")) () ")")) (compound_statement "{\n        puVar32 = (undefined1 *)0x5;\n        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);\n        printf(pcVar6);\n        pbVar20 = local_b4;\n        if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }\nLAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);\n        bVar21 = pbVar5 < local_b4;\n        bVar24 = pbVar5 == local_b4;\n        if (pbVar5 <= local_b4) break;\n        goto LAB_0005b368;\n      }" ({ "{") (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0," Line Number Statements:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," Line Number Statements:\n",5)" (identifier "dcgettext") (argument_list "(0," Line Number Statements:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal "" Line Number Statements:\n"" (" """) (string_content " Line Number Statements:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" (identifier "pbVar20") (= "=") (identifier "local_b4")) (; ";")) (if_statement "if (local_b4 < local_48) {\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" (if "if") (parenthesized_expression "(local_b4 < local_48)" (( "(") (binary_expression "local_b4 < local_48" (identifier "local_b4") (< "<") (identifier "local_48")) () ")")) (compound_statement "{\nLAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);\n          iVar14 = DAT_000b9d04;\n          uVar19 = DAT_000b9d00;\n          local_b4 = pbVar20 + 1;\n          bVar13 = *pbVar20;\n          if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }\n          switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }\nLAB_0005b6a1:\n          pbVar20 = local_b4;\n          if (local_48 <= local_b4) goto LAB_0005b730;\n          goto LAB_0005b6b6;\n        }" ({ "{") (labeled_statement "LAB_0005b6b6:\n          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" (statement_identifier "LAB_0005b6b6") (: ":") (expression_statement "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);" (call_expression "printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" (identifier "printf") (argument_list "("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32)" (( "(") (string_literal ""  [0x%08lx]"" (" """) (string_content "  [0x%08lx]") (" """)) (, ",") (binary_expression "(int)pbVar20 - (int)local_bc" (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")) (- "-") (cast_expression "(int)local_bc" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_bc"))) (, ",") (identifier "puVar32") () ")"))) (; ";"))) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" (identifier "iVar14") (= "=") (identifier "DAT_000b9d04")) (; ";")) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" (identifier "uVar19") (= "=") (identifier "DAT_000b9d00")) (; ";")) (expression_statement "local_b4 = pbVar20 + 1;" (assignment_expression "local_b4 = pbVar20 + 1" (identifier "local_b4") (= "=") (binary_expression "pbVar20 + 1" (identifier "pbVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" (identifier "bVar13") (= "=") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20"))) (; ";")) (if_statement "if (local_24._1_1_ <= bVar13) {\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" (if "if") (parenthesized_expression "(local_24._1_1_ <= bVar13)" (( "(") (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")) (<= "<=") (identifier "bVar13")) () ")")) (compound_statement "{\n            bVar13 = bVar13 - local_24._1_1_;\n            uVar7 = local_2c & 0xff;\n            uVar18 = (uint)(bVar13 / (byte)local_24);\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }\n            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);\n            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);\n            printf(pcVar6,uVar11,puVar32);\n            if (DAT_000b9d08 == 0) goto LAB_0005bb80;\ncode_r0x0005b679:\n            iVar14 = DAT_000b9d08;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0," (view %u)\n");\n            printf(pcVar6,iVar14,puVar32);\nLAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;\n            goto LAB_0005b6a1;\n          }" ({ "{") (expression_statement "bVar13 = bVar13 - local_24._1_1_;" (assignment_expression "bVar13 = bVar13 - local_24._1_1_" (identifier "bVar13") (= "=") (binary_expression "bVar13 - local_24._1_1_" (identifier "bVar13") (- "-") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")))) (; ";")) (expression_statement "uVar7 = local_2c & 0xff;" (assignment_expression "uVar7 = local_2c & 0xff" (identifier "uVar7") (= "=") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "uVar18 = (uint)(bVar13 / (byte)local_24);" (assignment_expression "uVar18 = (uint)(bVar13 / (byte)local_24)" (identifier "uVar18") (= "=") (call_expression "(uint)(bVar13 / (byte)local_24)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(bVar13 / (byte)local_24)" (( "(") (binary_expression "bVar13 / (byte)local_24" (identifier "bVar13") (/ "/") (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24"))) () ")")))) (; ";")) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }\n            else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" (if "if") (parenthesized_expression "(local_2c._1_1_ == '\x01')" (( "(") (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;\n              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d00 = (uint)lVar29;\n              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n              if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";\n              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;\n              puVar32 = &DAT_0007bc55;\n            }" ({ "{") (expression_statement "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;" (assignment_expression "lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7" (identifier "lVar28") (= "=") (binary_expression "(ulonglong)uVar18 * (ulonglong)uVar7" (cast_expression "(ulonglong)uVar18" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar18")) (* "*") (cast_expression "(ulonglong)uVar7" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar7")))) (; ";")) (expression_statement "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar28") (+ "+") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")"))))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (if_statement "if ((int)lVar28 != 0) {\n                DAT_000b9d08 = 0;\n              }" (if "if") (parenthesized_expression "((int)lVar28 != 0)" (( "(") (binary_expression "(int)lVar28 != 0" (cast_expression "(int)lVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar28")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";" (assignment_expression "pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s"" (identifier "pcVar6") (= "=") (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" (" """) (string_content "  Special opcode %d: advance Address by %s to 0x%s%s") (" """))) (; ";")) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)\n              ;" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" (identifier "pcVar9") (= "=") (cast_expression "(char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" (identifier "dcgettext") (argument_list "(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Special opcode %d: advance Address by %s to 0x%s%s"" (" """) (string_content "  Special opcode %d: advance Address by %s to 0x%s%s") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" (identifier "puVar32") (= "=") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55"))) (; ";")) (} "}")) (else_clause "else {\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" (else "else") (compound_statement "{\n              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);\n              puVar32 = local_54[0];\n              uVar7 = iVar10 * uVar7;\n              DAT_000b9d00 = uVar7 + uVar19;\n              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n              if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);\n              pcVar6 = "";\n            }" ({ "{") (expression_statement "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54);" (assignment_expression "iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" (identifier "iVar10") (= "=") (call_expression "FUN_0006b800((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" (identifier "FUN_0006b800") (argument_list "((byte)DAT_000b9d20 + uVar18,\n                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,\n                                    local_54)" (( "(") (binary_expression "(byte)DAT_000b9d20 + uVar18" (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20")) (+ "+") (identifier "uVar18")) (, ",") (call_expression "CARRY4((uint)(byte)DAT_000b9d20,uVar18)" (identifier "CARRY4") (argument_list "((uint)(byte)DAT_000b9d20,uVar18)" (( "(") (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) (, ",") (identifier "uVar18") () ")"))) (, ",") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (, ",") (number_literal "0") (, ",") (identifier "local_54") () ")")))) (; ";")) (expression_statement "puVar32 = local_54[0];" (assignment_expression "puVar32 = local_54[0]" (identifier "puVar32") (= "=") (subscript_expression "local_54[0]" (identifier "local_54") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "uVar7 = iVar10 * uVar7;" (assignment_expression "uVar7 = iVar10 * uVar7" (identifier "uVar7") (= "=") (binary_expression "iVar10 * uVar7" (identifier "iVar10") (* "*") (identifier "uVar7"))) (; ";")) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" (identifier "DAT_000b9d00") (= "=") (binary_expression "uVar7 + uVar19" (identifier "uVar7") (+ "+") (identifier "uVar19"))) (; ";")) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" (identifier "DAT_000b9d04") (= "=") (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" (identifier "iVar14") (+ "+") (cast_expression "(uint)CARRY4(uVar7,uVar19)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar7,uVar19)" (identifier "CARRY4") (argument_list "(uVar7,uVar19)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar19") () ")")))))) (; ";")) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" (identifier "DAT_000b9d20") (= "=") (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" (identifier "CONCAT11") (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" (( "(") (field_expression "DAT_000b9d20._1_1_" (identifier "DAT_000b9d20") (. ".") (field_identifier "_1_1_")) (, ",") (cast_expression "(char)local_54[0]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_54[0]" (identifier "local_54") ([ "[") (number_literal "0") (] "]"))) () ")")))) (; ";")) (if_statement "if (uVar7 != 0) {\n                DAT_000b9d08 = 0;\n              }" (if "if") (parenthesized_expression "(uVar7 != 0)" (( "(") (binary_expression "uVar7 != 0" (identifier "uVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" (identifier "pcVar9") (= "=") (cast_expression "(char *)dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" (identifier "dcgettext") (argument_list "(0,\n                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",\n                                         5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Special opcode %d: advance Address by %s to 0x%s[%d]%s"" (" """) (string_content "  Special opcode %d: advance Address by %s to 0x%s[%d]%s") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "pcVar6 = "";" (assignment_expression "pcVar6 = """ (identifier "pcVar6") (= "=") (string_literal """" (" """) (" """))) (; ";")) (} "}")))) (expression_statement "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);" (call_expression "printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" (identifier "printf") (argument_list "(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6)" (( "(") (identifier "pcVar9") (, ",") (cast_expression "(uint)bVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar13")) (, ",") (identifier "uVar12") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") (, ",") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;" (assignment_expression "puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" (identifier "puVar32") (= "=") (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28" (binary_expression "DAT_000b9d10 + (uint)(bVar13 % (byte)local_24)" (identifier "DAT_000b9d10") (+ "+") (call_expression "(uint)(bVar13 % (byte)local_24)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(bVar13 % (byte)local_24)" (( "(") (binary_expression "bVar13 % (byte)local_24" (identifier "bVar13") (% "%") (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24"))) () ")")))) (+ "+") (identifier "local_28"))) (; ";")) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" (identifier "DAT_000b9d10") (= "=") (identifier "puVar32")) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0," and Line by %s to %d",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," and Line by %s to %d",5)" (identifier "dcgettext") (argument_list "(0," and Line by %s to %d",5)" (( "(") (number_literal "0") (, ",") (string_literal "" and Line by %s to %d"" (" """) (string_content " and Line by %s to %d") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (if_statement "if (DAT_000b9d08 == 0) goto LAB_0005bb80;" (if "if") (parenthesized_expression "(DAT_000b9d08 == 0)" (( "(") (binary_expression "DAT_000b9d08 == 0" (identifier "DAT_000b9d08") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005bb80;" (goto "goto") (statement_identifier "LAB_0005bb80") (; ";"))) (labeled_statement "code_r0x0005b679:\n            iVar14 = DAT_000b9d08;" (statement_identifier "code_r0x0005b679") (: ":") (expression_statement "iVar14 = DAT_000b9d08;" (assignment_expression "iVar14 = DAT_000b9d08" (identifier "iVar14") (= "=") (identifier "DAT_000b9d08")) (; ";"))) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0," (view %u)\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0," (view %u)\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0," (view %u)\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," (view %u)\n")" (identifier "dcgettext") (argument_list "(0," (view %u)\n")" (( "(") (number_literal "0") (, ",") (string_literal "" (view %u)\n"" (" """) (string_content " (view %u)") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,iVar14,puVar32);" (call_expression "printf(pcVar6,iVar14,puVar32)" (identifier "printf") (argument_list "(pcVar6,iVar14,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "iVar14") (, ",") (identifier "puVar32") () ")"))) (; ";")) (labeled_statement "LAB_0005b698:\n            DAT_000b9d08 = DAT_000b9d08 + 1;" (statement_identifier "LAB_0005b698") (: ":") (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" (identifier "DAT_000b9d08") (= "=") (binary_expression "DAT_000b9d08 + 1" (identifier "DAT_000b9d08") (+ "+") (number_literal "1"))) (; ";"))) (goto_statement "goto LAB_0005b6a1;" (goto "goto") (statement_identifier "LAB_0005b6a1") (; ";")) (} "}"))) (switch_statement "switch(bVar13) {\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" (switch "switch") (parenthesized_expression "(bVar13)" (( "(") (identifier "bVar13") () ")")) (compound_statement "{\n          case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;\n          case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;\n          case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;\n          case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;\n          case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;\n          case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;\n          case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;\n          case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;\n          case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;\n          case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;\n          case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;\n          case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;\n          default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);\n          }" ({ "{") (case_statement "case 0:\n            iVar14 = FUN_000523d0();\n            local_b4 = local_b4 + iVar14;\n            break;" (case "case") (number_literal "0") (: ":") (expression_statement "iVar14 = FUN_000523d0();" (assignment_expression "iVar14 = FUN_000523d0()" (identifier "iVar14") (= "=") (call_expression "FUN_000523d0()" (identifier "FUN_000523d0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_b4 = local_b4 + iVar14;" (assignment_expression "local_b4 = local_b4 + iVar14" (identifier "local_b4") (= "=") (binary_expression "local_b4 + iVar14" (identifier "local_b4") (+ "+") (identifier "iVar14"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 1:\n            puVar31 = &UNK_0009393c;\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);\n            printf(pcVar6,puVar31,puVar32);\n            if (DAT_000b9d08 != 0) goto code_r0x0005b679;\nLAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);\n            goto LAB_0005b698;" (case "case") (number_literal "1") (: ":") (expression_statement "puVar31 = &UNK_0009393c;" (assignment_expression "puVar31 = &UNK_0009393c" (identifier "puVar31") (= "=") (pointer_expression "&UNK_0009393c" (& "&") (identifier "UNK_0009393c"))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,&UNK_0009393c);" (assignment_expression "pcVar6 = (char *)dcgettext(0,&UNK_0009393c)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,&UNK_0009393c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,&UNK_0009393c)" (identifier "dcgettext") (argument_list "(0,&UNK_0009393c)" (( "(") (number_literal "0") (, ",") (pointer_expression "&UNK_0009393c" (& "&") (identifier "UNK_0009393c")) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,puVar31,puVar32);" (call_expression "printf(pcVar6,puVar31,puVar32)" (identifier "printf") (argument_list "(pcVar6,puVar31,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "puVar31") (, ",") (identifier "puVar32") () ")"))) (; ";")) (if_statement "if (DAT_000b9d08 != 0) goto code_r0x0005b679;" (if "if") (parenthesized_expression "(DAT_000b9d08 != 0)" (( "(") (binary_expression "DAT_000b9d08 != 0" (identifier "DAT_000b9d08") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto code_r0x0005b679;" (goto "goto") (statement_identifier "code_r0x0005b679") (; ";"))) (labeled_statement "LAB_0005bb80:\n            putc(10,*(FILE **)PTR_stdout_000b3fd8);" (statement_identifier "LAB_0005bb80") (: ":") (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" (identifier "putc") (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" (* "*") (cast_expression "(FILE **)PTR_stdout_000b3fd8" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_000b3fd8"))) () ")"))) (; ";"))) (goto_statement "goto LAB_0005b698;" (goto "goto") (statement_identifier "LAB_0005b698") (; ";"))) (case_statement "case 2:\n            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            iVar14 = DAT_000b9d04;\n            uVar19 = DAT_000b9d00;\n            local_b4 = local_b4 + local_44;\n            if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }\n            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);\n            puVar3 = local_54[0];\n            uVar7 = iVar10 * (local_2c & 0xff);\n            DAT_000b9d00 = uVar7 + uVar19;\n            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);\n            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);\n            if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");\n            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);\n            break;" (case "case") (number_literal "2") (: ":") (expression_statement "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "uVar27") (= "=") (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "iVar14 = DAT_000b9d04;" (assignment_expression "iVar14 = DAT_000b9d04" (identifier "iVar14") (= "=") (identifier "DAT_000b9d04")) (; ";")) (expression_statement "uVar19 = DAT_000b9d00;" (assignment_expression "uVar19 = DAT_000b9d00" (identifier "uVar19") (= "=") (identifier "DAT_000b9d00")) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (local_2c._1_1_ == '\x01') {\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" (if "if") (parenthesized_expression "(local_2c._1_1_ == '\x01')" (( "(") (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);\n              uVar19 = (uint)lVar28;\n              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);\n              bVar21 = CARRY4(DAT_000b9d00,uVar19);\n              DAT_000b9d00 = DAT_000b9d00 + uVar19;\n              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;\n              if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              uVar11 = FUN_0004cb50(0);\n              uVar12 = FUN_0004cb50(0);\n              pcVar6 = "  Advance PC by %s to 0x%s%s\n";\n              goto code_r0x0005b8b1;\n            }" ({ "{") (expression_statement "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);" (assignment_expression "lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" (identifier "lVar28") (= "=") (binary_expression "(uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff)" (parenthesized_expression "(uVar27 & 0xffffffff)" (( "(") (binary_expression "uVar27 & 0xffffffff" (identifier "uVar27") (& "&") (number_literal "0xffffffff")) () ")")) (* "*") (call_expression "(ulonglong)(local_2c & 0xff)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(local_2c & 0xff)" (( "(") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff")) () ")"))))) (; ";")) (expression_statement "uVar19 = (uint)lVar28;" (assignment_expression "uVar19 = (uint)lVar28" (identifier "uVar19") (= "=") (cast_expression "(uint)lVar28" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar28"))) (; ";")) (expression_statement "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" (identifier "iVar14") (= "=") (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20)" (binary_expression "(int)(uVar27 >> 0x20) * (local_2c & 0xff)" (cast_expression "(int)(uVar27 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(uVar27 >> 0x20)" (( "(") (binary_expression "uVar27 >> 0x20" (identifier "uVar27") (>> ">>") (number_literal "0x20")) () ")"))) (* "*") (parenthesized_expression "(local_2c & 0xff)" (( "(") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff")) () ")"))) (+ "+") (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar28")) (>> ">>") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "bVar21 = CARRY4(DAT_000b9d00,uVar19);" (assignment_expression "bVar21 = CARRY4(DAT_000b9d00,uVar19)" (identifier "bVar21") (= "=") (call_expression "CARRY4(DAT_000b9d00,uVar19)" (identifier "CARRY4") (argument_list "(DAT_000b9d00,uVar19)" (( "(") (identifier "DAT_000b9d00") (, ",") (identifier "uVar19") () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = DAT_000b9d00 + uVar19;" (assignment_expression "DAT_000b9d00 = DAT_000b9d00 + uVar19" (identifier "DAT_000b9d00") (= "=") (binary_expression "DAT_000b9d00 + uVar19" (identifier "DAT_000b9d00") (+ "+") (identifier "uVar19"))) (; ";")) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21" (identifier "DAT_000b9d04") (= "=") (binary_expression "DAT_000b9d04 + iVar14 + (uint)bVar21" (binary_expression "DAT_000b9d04 + iVar14" (identifier "DAT_000b9d04") (+ "+") (identifier "iVar14")) (+ "+") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21")))) (; ";")) (if_statement "if (iVar14 != 0 || uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" (if "if") (parenthesized_expression "(iVar14 != 0 || uVar19 != 0)" (( "(") (binary_expression "iVar14 != 0 || uVar19 != 0" (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = "  Advance PC by %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by %s to 0x%s%s\n"" (identifier "pcVar6") (= "=") (string_literal ""  Advance PC by %s to 0x%s%s\n"" (" """) (string_content "  Advance PC by %s to 0x%s%s") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto code_r0x0005b8b1;" (goto "goto") (statement_identifier "code_r0x0005b8b1") (; ";")) (} "}"))) (expression_statement "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);" (assignment_expression "iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" (identifier "iVar10") (= "=") (call_expression "FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" (identifier "FUN_0006b800") (argument_list "(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54)" (( "(") (binary_expression "uVar27 + (byte)DAT_000b9d20" (identifier "uVar27") (+ "+") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) (, ",") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (, ",") (number_literal "0") (, ",") (identifier "local_54") () ")")))) (; ";")) (expression_statement "puVar3 = local_54[0];" (assignment_expression "puVar3 = local_54[0]" (identifier "puVar3") (= "=") (subscript_expression "local_54[0]" (identifier "local_54") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "uVar7 = iVar10 * (local_2c & 0xff);" (assignment_expression "uVar7 = iVar10 * (local_2c & 0xff)" (identifier "uVar7") (= "=") (binary_expression "iVar10 * (local_2c & 0xff)" (identifier "iVar10") (* "*") (parenthesized_expression "(local_2c & 0xff)" (( "(") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = uVar7 + uVar19;" (assignment_expression "DAT_000b9d00 = uVar7 + uVar19" (identifier "DAT_000b9d00") (= "=") (binary_expression "uVar7 + uVar19" (identifier "uVar7") (+ "+") (identifier "uVar19"))) (; ";")) (expression_statement "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);" (assignment_expression "DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19)" (identifier "DAT_000b9d04") (= "=") (binary_expression "iVar14 + (uint)CARRY4(uVar7,uVar19)" (identifier "iVar14") (+ "+") (cast_expression "(uint)CARRY4(uVar7,uVar19)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar7,uVar19)" (identifier "CARRY4") (argument_list "(uVar7,uVar19)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar19") () ")")))))) (; ";")) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" (identifier "DAT_000b9d20") (= "=") (call_expression "CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0])" (identifier "CONCAT11") (argument_list "(DAT_000b9d20._1_1_,(char)local_54[0])" (( "(") (field_expression "DAT_000b9d20._1_1_" (identifier "DAT_000b9d20") (. ".") (field_identifier "_1_1_")) (, ",") (cast_expression "(char)local_54[0]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "local_54[0]" (identifier "local_54") ([ "[") (number_literal "0") (] "]"))) () ")")))) (; ";")) (if_statement "if (uVar7 != 0) {\n              DAT_000b9d08 = 0;\n            }" (if "if") (parenthesized_expression "(uVar7 != 0)" (( "(") (binary_expression "uVar7 != 0" (identifier "uVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n")" (identifier "dcgettext") (argument_list "(0,"  Advance PC by %s to 0x%s[%d]%s\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Advance PC by %s to 0x%s[%d]%s\n"" (" """) (string_content "  Advance PC by %s to 0x%s[%d]%s") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" (identifier "printf") (argument_list "(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar12") (, ",") (identifier "uVar11") (, ",") (identifier "puVar3") (, ",") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55")) () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 3:\n            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);\n            local_b4 = local_b4 + local_44;\n            puVar32 = DAT_000b9d10 + iVar14;\n            DAT_000b9d10 = puVar32;\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            break;" (case "case") (number_literal "3") (: ":") (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(local_b4,&local_44,1,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,1,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "1") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "puVar32 = DAT_000b9d10 + iVar14;" (assignment_expression "puVar32 = DAT_000b9d10 + iVar14" (identifier "puVar32") (= "=") (binary_expression "DAT_000b9d10 + iVar14" (identifier "DAT_000b9d10") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "DAT_000b9d10 = puVar32;" (assignment_expression "DAT_000b9d10 = puVar32" (identifier "DAT_000b9d10") (= "=") (identifier "puVar32")) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Advance Line by %s to %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Advance Line by %s to %d\n",5)" (identifier "dcgettext") (argument_list "(0,"  Advance Line by %s to %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Advance Line by %s to %d\n"" (" """) (string_content "  Advance Line by %s to %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 4:\n            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d0c = iVar14;\n            break;" (case "case") (number_literal "4") (: ":") (expression_statement "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Set File Name to entry %s in the File Name Table\n")" (identifier "dcgettext") (argument_list "(0,"  Set File Name to entry %s in the File Name Table\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Set File Name to entry %s in the File Name Table\n"" (" """) (string_content "  Set File Name to entry %s in the File Name Table") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" (identifier "DAT_000b9d0c") (= "=") (identifier "iVar14")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 5:\n            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar12 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");\n            printf(pcVar6,uVar12,puVar32);\n            DAT_000b9d14 = uVar11;\n            break;" (case "case") (number_literal "5") (: ":") (expression_statement "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set column to %s\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Set column to %s\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Set column to %s\n")" (identifier "dcgettext") (argument_list "(0,"  Set column to %s\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Set column to %s\n"" (" """) (string_content "  Set column to %s") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar12,puVar32);" (call_expression "printf(pcVar6,uVar12,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar12,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar12") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "DAT_000b9d14 = uVar11;" (assignment_expression "DAT_000b9d14 = uVar11" (identifier "DAT_000b9d14") (= "=") (identifier "uVar11")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 6:\n            bVar21 = DAT_000b9d18 == 0;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            DAT_000b9d18 = (uint)bVar21;\n            break;" (case "case") (number_literal "6") (: ":") (expression_statement "bVar21 = DAT_000b9d18 == 0;" (assignment_expression "bVar21 = DAT_000b9d18 == 0" (identifier "bVar21") (= "=") (binary_expression "DAT_000b9d18 == 0" (identifier "DAT_000b9d18") (== "==") (number_literal "0"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Set is_stmt to %s\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Set is_stmt to %s\n")" (identifier "dcgettext") (argument_list "(0,"  Set is_stmt to %s\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Set is_stmt to %s\n"" (" """) (string_content "  Set is_stmt to %s") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "DAT_000b9d18 = (uint)bVar21;" (assignment_expression "DAT_000b9d18 = (uint)bVar21" (identifier "DAT_000b9d18") (= "=") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 7:\n            pcVar6 = "  Set basic block\n";\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");\n            printf(pcVar9,pcVar6,puVar32);\n            DAT_000b9d1c = 1;\n            break;" (case "case") (number_literal "7") (: ":") (expression_statement "pcVar6 = "  Set basic block\n";" (assignment_expression "pcVar6 = "  Set basic block\n"" (identifier "pcVar6") (= "=") (string_literal ""  Set basic block\n"" (" """) (string_content "  Set basic block") (escape_sequence "\n") (" """))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar9 = (char *)dcgettext(0,"  Set basic block\n");" (assignment_expression "pcVar9 = (char *)dcgettext(0,"  Set basic block\n")" (identifier "pcVar9") (= "=") (cast_expression "(char *)dcgettext(0,"  Set basic block\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Set basic block\n")" (identifier "dcgettext") (argument_list "(0,"  Set basic block\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Set basic block\n"" (" """) (string_content "  Set basic block") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" (identifier "printf") (argument_list "(pcVar9,pcVar6,puVar32)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar6") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" (identifier "DAT_000b9d1c") (= "=") (number_literal "1")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 8:\n            if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }\n            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);\n            bVar21 = CARRY4(uVar19,DAT_000b9d00);\n            DAT_000b9d00 = uVar19 + DAT_000b9d00;\n            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;\n            if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }\n            uVar11 = FUN_0004cb50(0);\n            uVar12 = FUN_0004cb50(0);\n            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";\ncode_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);\n            break;" (case "case") (number_literal "8") (: ":") (if_statement "if (local_2c._1_1_ == '\0') {\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" (if "if") (parenthesized_expression "(local_2c._1_1_ == '\0')" (( "(") (binary_expression "local_2c._1_1_ == '\0'" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n              pcVar1 = (code *)invalidInstructionException();\n              (*pcVar1)();\n            }" ({ "{") (expression_statement "pcVar1 = (code *)invalidInstructionException();" (assignment_expression "pcVar1 = (code *)invalidInstructionException()" (identifier "pcVar1") (= "=") (cast_expression "(code *)invalidInstructionException()" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "invalidInstructionException()" (identifier "invalidInstructionException") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "(*pcVar1)();" (call_expression "(*pcVar1)()" (parenthesized_expression "(*pcVar1)" (( "(") (pointer_expression "*pcVar1" (* "*") (identifier "pcVar1")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);" (assignment_expression "uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" (identifier "uVar19") (= "=") (binary_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff)" (cast_expression "(int)((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff))" (( "(") (binary_expression "(ulonglong)(byte)~local_24._1_1_ /\n                          (ulonglong)(longlong)(int)(local_24 & 0xff)" (cast_expression "(ulonglong)(byte)~local_24._1_1_" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (cast_expression "(byte)~local_24._1_1_" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (unary_expression "~local_24._1_1_" (~ "~") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_"))))) (/ "/") (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(longlong)" (( "(") (identifier "longlong") () ")"))) (argument_list "(int)" (( "(") (identifier "int") () ")"))) (argument_list "(local_24 & 0xff)" (( "(") (binary_expression "local_24 & 0xff" (identifier "local_24") (& "&") (number_literal "0xff")) () ")")))) () ")"))) (* "*") (parenthesized_expression "(local_2c & 0xff)" (( "(") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "bVar21 = CARRY4(uVar19,DAT_000b9d00);" (assignment_expression "bVar21 = CARRY4(uVar19,DAT_000b9d00)" (identifier "bVar21") (= "=") (call_expression "CARRY4(uVar19,DAT_000b9d00)" (identifier "CARRY4") (argument_list "(uVar19,DAT_000b9d00)" (( "(") (identifier "uVar19") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = uVar19 + DAT_000b9d00;" (assignment_expression "DAT_000b9d00 = uVar19 + DAT_000b9d00" (identifier "DAT_000b9d00") (= "=") (binary_expression "uVar19 + DAT_000b9d00" (identifier "uVar19") (+ "+") (identifier "DAT_000b9d00"))) (; ";")) (expression_statement "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;" (assignment_expression "DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21" (identifier "DAT_000b9d04") (= "=") (binary_expression "DAT_000b9d04 + (uint)bVar21" (identifier "DAT_000b9d04") (+ "+") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21")))) (; ";")) (if_statement "if (uVar19 != 0) {\n              DAT_000b9d08 = 0;\n            }" (if "if") (parenthesized_expression "(uVar19 != 0)" (( "(") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              DAT_000b9d08 = 0;\n            }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_0004cb50(0);" (assignment_expression "uVar12 = FUN_0004cb50(0)" (identifier "uVar12") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";" (assignment_expression "pcVar6 = "  Advance PC by constant %s to 0x%s%s\n"" (identifier "pcVar6") (= "=") (string_literal ""  Advance PC by constant %s to 0x%s%s\n"" (" """) (string_content "  Advance PC by constant %s to 0x%s%s") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "code_r0x0005b8b1:\n            puVar32 = (undefined1 *)0x5;" (statement_identifier "code_r0x0005b8b1") (: ":") (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";"))) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,pcVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar6)" (identifier "dcgettext") (argument_list "(0,pcVar6)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);" (call_expression "printf(pcVar6,uVar12,uVar11,&DAT_0007bc55)" (identifier "printf") (argument_list "(pcVar6,uVar12,uVar11,&DAT_0007bc55)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar12") (, ",") (identifier "uVar11") (, ",") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55")) () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 9:\n            if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }\n            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);\n            DAT_000b9d00 = (uint)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);\n            DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n            puVar32 = (undefined1 *)FUN_0004cb50(0);\n            uVar11 = FUN_0004cb50(0);\n            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);\n            printf(pcVar6,uVar11,puVar32);\n            local_b4 = pbVar20 + 3;\n            break;" (case "case") (number_literal "9") (: ":") (if_statement "if (pbVar20 + 3 < pbVar5) {\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }\n            else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" (if "if") (parenthesized_expression "(pbVar20 + 3 < pbVar5)" (( "(") (binary_expression "pbVar20 + 3 < pbVar5" (binary_expression "pbVar20 + 3" (identifier "pbVar20") (+ "+") (number_literal "3")) (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n              iVar14 = 2;\ncode_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);\n            }" ({ "{") (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" (identifier "iVar14") (= "=") (number_literal "2")) (; ";")) (labeled_statement "code_r0x0005d4cd:\n              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" (statement_identifier "code_r0x0005d4cd") (: ":") (expression_statement "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);" (assignment_expression "lVar28 = (*DAT_000b9dd8)(local_b4,iVar14)" (identifier "lVar28") (= "=") (call_expression "(*DAT_000b9dd8)(local_b4,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(local_b4,iVar14)" (( "(") (identifier "local_b4") (, ",") (identifier "iVar14") () ")")))) (; ";"))) (} "}")) (else_clause "else {\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" (else "else") (compound_statement "{\n              lVar28 = 0;\n              if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;\n            }" ({ "{") (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))\n              goto code_r0x0005d4cd;" (if "if") (parenthesized_expression "((local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))" (( "(") (binary_expression "(local_b4 < pbVar5) &&\n                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" (parenthesized_expression "(local_b4 < pbVar5)" (( "(") (binary_expression "local_b4 < pbVar5" (identifier "local_b4") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8)" (( "(") (comma_expression "iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)local_b4" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)local_b4" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")))) (, ",") (comma_expression "lVar28 = 0, iVar14 - 1U < 8" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (, ",") (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")) (< "<") (number_literal "8")))) () ")"))) () ")")) (goto_statement "goto code_r0x0005d4cd;" (goto "goto") (statement_identifier "code_r0x0005d4cd") (; ";"))) (} "}")))) (expression_statement "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar28") (= "=") (binary_expression "lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar28") (+ "+") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")"))))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar28;" (assignment_expression "DAT_000b9d00 = (uint)lVar28" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar28" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar28"))) (; ";")) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar28 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar28 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar28")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (= "=") (binary_expression "DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (& "&") (number_literal "0xff00"))) (; ";")) (expression_statement "puVar32 = (undefined1 *)FUN_0004cb50(0);" (assignment_expression "puVar32 = (undefined1 *)FUN_0004cb50(0)" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)FUN_0004cb50(0)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")"))))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" (identifier "dcgettext") (argument_list "(0,"  Advance PC by fixed size amount %s to 0x%s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Advance PC by fixed size amount %s to 0x%s\n"" (" """) (string_content "  Advance PC by fixed size amount %s to 0x%s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "local_b4 = pbVar20 + 3;" (assignment_expression "local_b4 = pbVar20 + 3" (identifier "local_b4") (= "=") (binary_expression "pbVar20 + 3" (identifier "pbVar20") (+ "+") (number_literal "3"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 10:\n            pcVar6 = "  Set prologue_end to true\n";\n            goto code_r0x0005b70b;" (case "case") (number_literal "10") (: ":") (expression_statement "pcVar6 = "  Set prologue_end to true\n";" (assignment_expression "pcVar6 = "  Set prologue_end to true\n"" (identifier "pcVar6") (= "=") (string_literal ""  Set prologue_end to true\n"" (" """) (string_content "  Set prologue_end to true") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto code_r0x0005b70b;" (goto "goto") (statement_identifier "code_r0x0005b70b") (; ";"))) (case_statement "case 0xb:\n            pcVar6 = "  Set epilogue_begin to true\n";\ncode_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;\n            pcVar9 = (char *)dcgettext(0,pcVar6);\n            printf(pcVar9,pcVar6,puVar32);\n            pbVar20 = local_b4;\n            if (local_48 <= local_b4) goto LAB_0005b730;\n            goto LAB_0005b6b6;" (case "case") (number_literal "0xb") (: ":") (expression_statement "pcVar6 = "  Set epilogue_begin to true\n";" (assignment_expression "pcVar6 = "  Set epilogue_begin to true\n"" (identifier "pcVar6") (= "=") (string_literal ""  Set epilogue_begin to true\n"" (" """) (string_content "  Set epilogue_begin to true") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "code_r0x0005b70b:\n            puVar32 = (undefined1 *)0x5;" (statement_identifier "code_r0x0005b70b") (: ":") (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";"))) (expression_statement "pcVar9 = (char *)dcgettext(0,pcVar6);" (assignment_expression "pcVar9 = (char *)dcgettext(0,pcVar6)" (identifier "pcVar9") (= "=") (cast_expression "(char *)dcgettext(0,pcVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar6)" (identifier "dcgettext") (argument_list "(0,pcVar6)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") () ")"))))) (; ";")) (expression_statement "printf(pcVar9,pcVar6,puVar32);" (call_expression "printf(pcVar9,pcVar6,puVar32)" (identifier "printf") (argument_list "(pcVar9,pcVar6,puVar32)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar6") (, ",") (identifier "puVar32") () ")"))) (; ";")) (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" (identifier "pbVar20") (= "=") (identifier "local_b4")) (; ";")) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" (if "if") (parenthesized_expression "(local_48 <= local_b4)" (( "(") (binary_expression "local_48 <= local_b4" (identifier "local_48") (<= "<=") (identifier "local_b4")) () ")")) (goto_statement "goto LAB_0005b730;" (goto "goto") (statement_identifier "LAB_0005b730") (; ";"))) (goto_statement "goto LAB_0005b6b6;" (goto "goto") (statement_identifier "LAB_0005b6b6") (; ";"))) (case_statement "case 0xc:\n            FUN_0004f990(local_b4,&local_44,0,pbVar5);\n            local_b4 = local_b4 + local_44;\n            uVar11 = FUN_0004cb50(0);\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");\n            printf(pcVar6,uVar11,puVar32);\n            break;" (case "case") (number_literal "0xc") (: ":") (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Set ISA to %s\n")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Set ISA to %s\n")" (identifier "dcgettext") (argument_list "(0,"  Set ISA to %s\n")" (( "(") (number_literal "0") (, ",") (string_literal ""  Set ISA to %s\n"" (" """) (string_content "  Set ISA to %s") (escape_sequence "\n") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,puVar32);" (call_expression "printf(pcVar6,uVar11,puVar32)" (identifier "printf") (argument_list "(pcVar6,uVar11,puVar32)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "puVar32") () ")"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "default:\n            puVar32 = (undefined1 *)0x5;\n            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");\n            printf(pcVar6,(uint)bVar13,puVar32);\n            if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }\n            putc(10,*(FILE **)puVar2);" (default "default") (: ":") (expression_statement "puVar32 = (undefined1 *)0x5;" (assignment_expression "puVar32 = (undefined1 *)0x5" (identifier "puVar32") (= "=") (cast_expression "(undefined1 *)0x5" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ")" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ")" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ")" (identifier "dcgettext") (argument_list "(0,"  Unknown opcode %d with operands: ")" (( "(") (number_literal "0") (, ",") (string_literal ""  Unknown opcode %d with operands: "" (" """) (string_content "  Unknown opcode %d with operands: ") (" """)) () ")"))))) (; ";")) (expression_statement "printf(pcVar6,(uint)bVar13,puVar32);" (call_expression "printf(pcVar6,(uint)bVar13,puVar32)" (identifier "printf") (argument_list "(pcVar6,(uint)bVar13,puVar32)" (( "(") (identifier "pcVar6") (, ",") (cast_expression "(uint)bVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar13")) (, ",") (identifier "puVar32") () ")"))) (; ";")) (if_statement "if ((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" (if "if") (parenthesized_expression "((local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0))" (( "(") (binary_expression "(local_94 != 0) &&\n               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" (parenthesized_expression "(local_94 != 0)" (( "(") (binary_expression "local_94 != 0" (identifier "local_94") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)" (( "(") (comma_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13)" (identifier "uVar19") (= "=") (binary_expression "(uint)*(byte *)(local_94 + -1 + (uint)bVar13)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(local_94 + -1 + (uint)bVar13)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_94 + -1 + (uint)bVar13)" (( "(") (binary_expression "local_94 + -1 + (uint)bVar13" (binary_expression "local_94 + -1" (identifier "local_94") (+ "+") (number_literal "-1")) (+ "+") (cast_expression "(uint)bVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar13"))) () ")"))))) (, ",") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }\n              FUN_0004f990(local_b4,&local_44,0,pbVar5);\n              uVar11 = FUN_0004cb50(0);\n              puVar32 = &DAT_0007bc55;\n              printf("0x%s%s",uVar11,&DAT_0007bc55);\n              local_b4 = local_b4 + local_44;\n            }" ({ "{") (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" (for "for") (( "(") (; ";") (binary_expression "uVar19 != 1" (identifier "uVar19") (!= "!=") (number_literal "1")) (; ";") (assignment_expression "uVar19 = uVar19 - 1" (identifier "uVar19") (= "=") (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1"))) () ")") (compound_statement "{\n                FUN_0004f990(local_b4,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                local_b4 = local_b4 + local_44;\n              }" ({ "{") (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" (identifier "printf") (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" (( "(") (string_literal ""0x%s%s"" (" """) (string_content "0x%s%s") (" """)) (, ",") (identifier "uVar11") (, ",") (pointer_expression "&DAT_0007c4b1" (& "&") (identifier "DAT_0007c4b1")) () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (} "}"))) (expression_statement "FUN_0004f990(local_b4,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_b4,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b4,&local_44,0,pbVar5)" (( "(") (identifier "local_b4") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "puVar32 = &DAT_0007bc55;" (assignment_expression "puVar32 = &DAT_0007bc55" (identifier "puVar32") (= "=") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55"))) (; ";")) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" (identifier "printf") (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" (( "(") (string_literal ""0x%s%s"" (" """) (string_content "0x%s%s") (" """)) (, ",") (identifier "uVar11") (, ",") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55")) () ")"))) (; ";")) (expression_statement "local_b4 = local_b4 + local_44;" (assignment_expression "local_b4 = local_b4 + local_44" (identifier "local_b4") (= "=") (binary_expression "local_b4 + local_44" (identifier "local_b4") (+ "+") (identifier "local_44"))) (; ";")) (} "}"))) (expression_statement "putc(10,*(FILE **)puVar2);" (call_expression "putc(10,*(FILE **)puVar2)" (identifier "putc") (argument_list "(10,*(FILE **)puVar2)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)puVar2" (* "*") (cast_expression "(FILE **)puVar2" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar2"))) () ")"))) (; ";"))) (} "}"))) (labeled_statement "LAB_0005b6a1:\n          pbVar20 = local_b4;" (statement_identifier "LAB_0005b6a1") (: ":") (expression_statement "pbVar20 = local_b4;" (assignment_expression "pbVar20 = local_b4" (identifier "pbVar20") (= "=") (identifier "local_b4")) (; ";"))) (if_statement "if (local_48 <= local_b4) goto LAB_0005b730;" (if "if") (parenthesized_expression "(local_48 <= local_b4)" (( "(") (binary_expression "local_48 <= local_b4" (identifier "local_48") (<= "<=") (identifier "local_b4")) () ")")) (goto_statement "goto LAB_0005b730;" (goto "goto") (statement_identifier "LAB_0005b730") (; ";"))) (goto_statement "goto LAB_0005b6b6;" (goto "goto") (statement_identifier "LAB_0005b6b6") (; ";")) (} "}"))) (labeled_statement "LAB_0005b730:\n        putc(10,*(FILE **)PTR_stdout_000b3fd8);" (statement_identifier "LAB_0005b730") (: ":") (expression_statement "putc(10,*(FILE **)PTR_stdout_000b3fd8);" (call_expression "putc(10,*(FILE **)PTR_stdout_000b3fd8)" (identifier "putc") (argument_list "(10,*(FILE **)PTR_stdout_000b3fd8)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)PTR_stdout_000b3fd8" (* "*") (cast_expression "(FILE **)PTR_stdout_000b3fd8" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_000b3fd8"))) () ")"))) (; ";"))) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" (identifier "bVar21") (= "=") (binary_expression "pbVar5 < local_b4" (identifier "pbVar5") (< "<") (identifier "local_b4"))) (; ";")) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" (identifier "bVar24") (= "=") (binary_expression "pbVar5 == local_b4" (identifier "pbVar5") (== "==") (identifier "local_b4"))) (; ";")) (if_statement "if (pbVar5 <= local_b4) break;" (if "if") (parenthesized_expression "(pbVar5 <= local_b4)" (( "(") (binary_expression "pbVar5 <= local_b4" (identifier "pbVar5") (<= "<=") (identifier "local_b4")) () ")")) (break_statement "break;" (break "break") (; ";"))) (goto_statement "goto LAB_0005b368;" (goto "goto") (statement_identifier "LAB_0005b368") (; ";")) (} "}"))) (expression_statement "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0," No Line Number Statements.\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0," No Line Number Statements.\n",5)" (identifier "dcgettext") (argument_list "(0," No Line Number Statements.\n",5)" (( "(") (number_literal "0") (, ",") (string_literal "" No Line Number Statements.\n"" (" """) (string_content " No Line Number Statements.") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "bVar21 = pbVar5 < local_b4;" (assignment_expression "bVar21 = pbVar5 < local_b4" (identifier "bVar21") (= "=") (binary_expression "pbVar5 < local_b4" (identifier "pbVar5") (< "<") (identifier "local_b4"))) (; ";")) (expression_statement "bVar24 = pbVar5 == local_b4;" (assignment_expression "bVar24 = pbVar5 == local_b4" (identifier "bVar24") (= "=") (binary_expression "pbVar5 == local_b4" (identifier "pbVar5") (== "==") (identifier "local_b4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_b4 < pbVar5)" (( "(") (binary_expression "local_b4 < pbVar5" (identifier "local_b4") (< "<") (identifier "pbVar5")) () ")")) (; ";"))) (expression_statement "uVar23 = 0;" (assignment_expression "uVar23 = 0" (identifier "uVar23") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar25 = (DAT_000b9db0 & 2) == 0;" (assignment_expression "uVar25 = (DAT_000b9db0 & 2) == 0" (identifier "uVar25") (= "=") (binary_expression "(DAT_000b9db0 & 2) == 0" (parenthesized_expression "(DAT_000b9db0 & 2)" (( "(") (binary_expression "DAT_000b9db0 & 2" (identifier "DAT_000b9db0") (& "&") (number_literal "2")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (!(bool)uVar25) {\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" (if "if") (parenthesized_expression "(!(bool)uVar25)" (( "(") (unary_expression "!(bool)uVar25" (! "!") (cast_expression "(bool)uVar25" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar25"))) () ")")) (compound_statement "{\n      FUN_0004eb80();\n      local_58 = 1;\nLAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );\n    }" ({ "{") (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" (identifier "FUN_0004eb80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "local_58 = 1;" (assignment_expression "local_58 = 1" (identifier "local_58") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_0005a9d0:\n      do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" (statement_identifier "LAB_0005a9d0") (: ":") (do_statement "do {\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      } while( true );" (do "do") (compound_statement "{\n        local_6c = ".debug_line.";\n        iVar14 = 0xc;\n        pbVar20 = *(byte **)(param_1 + 8);\n        do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);\n        bVar21 = false;\n        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;\n        if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }\nLAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n        DAT_000b9d00 = (uint)lVar29;\n        putc(10,*(FILE **)local_9c);\n        uVar23 = pbVar5 < local_bc;\n        uVar25 = pbVar5 == local_bc;\n        if (pbVar5 <= local_bc) {\n          return local_58;\n        }\n      }" ({ "{") (expression_statement "local_6c = ".debug_line.";" (assignment_expression "local_6c = ".debug_line."" (identifier "local_6c") (= "=") (string_literal "".debug_line."" (" """) (string_content ".debug_line.") (" """))) (; ";")) (expression_statement "iVar14 = 0xc;" (assignment_expression "iVar14 = 0xc" (identifier "iVar14") (= "=") (number_literal "0xc")) (; ";")) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(byte **)(param_1 + 8)" (identifier "pbVar20") (= "=") (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")) () ")"))))) (; ";")) (do_statement "do {\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        } while ((bool)uVar25);" (do "do") (compound_statement "{\n          if (iVar14 == 0) break;\n          iVar14 = iVar14 + -1;\n          uVar23 = *pbVar20 < (byte)*local_6c;\n          uVar25 = *pbVar20 == *local_6c;\n          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);\n        }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar23 = *pbVar20 < (byte)*local_6c;" (assignment_expression "uVar23 = *pbVar20 < (byte)*local_6c" (identifier "uVar23") (= "=") (binary_expression "*pbVar20 < (byte)*local_6c" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (binary_expression "(byte)*local_6c" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (* "*") (identifier "local_6c")))) (; ";")) (expression_statement "uVar25 = *pbVar20 == *local_6c;" (assignment_expression "uVar25 = *pbVar20 == *local_6c" (identifier "uVar25") (= "=") (binary_expression "*pbVar20 == *local_6c" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*local_6c" (* "*") (identifier "local_6c")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);" (assignment_expression "local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" (identifier "local_6c") (= "=") (cast_expression "(char *)((byte *)local_6c + (uint)bVar26 * -2 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((byte *)local_6c + (uint)bVar26 * -2 + 1)" (( "(") (binary_expression "(byte *)local_6c + (uint)bVar26 * -2 + 1" (binary_expression "(byte *)local_6c + (uint)bVar26 * -2" (cast_expression "(byte *)local_6c" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_6c")) (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((bool)uVar25)" (( "(") (cast_expression "(bool)uVar25" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar25")) () ")")) (; ";")) (expression_statement "bVar21 = false;" (assignment_expression "bVar21 = false" (identifier "bVar21") (= "=") (false "false")) (; ";")) (expression_statement "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;" (assignment_expression "bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" (identifier "bVar24") (= "=") (binary_expression "(!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23" (parenthesized_expression "(!(bool)uVar23 && !(bool)uVar25)" (( "(") (binary_expression "!(bool)uVar23 && !(bool)uVar25" (unary_expression "!(bool)uVar23" (! "!") (cast_expression "(bool)uVar23" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar23"))) (&& "&&") (unary_expression "!(bool)uVar25" (! "!") (cast_expression "(bool)uVar25" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar25")))) () ")")) (== "==") (cast_expression "(bool)uVar23" (( "(") (type_descriptor "bool" (primitive_type "bool")) () ")") (identifier "uVar23")))) (; ";")) (if_statement "if (bVar24) {\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }\n        else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" (if "if") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (compound_statement "{\n          iVar14 = 0x10;\n          pbVar20 = *(byte **)(param_1 + 8);\n          pbVar16 = (byte *)".debug_line.dwo";\n          do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);\n          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;\n          local_20[0] = DAT_000b7600;\n          local_40 = DAT_000b75e0;\n          local_3c = DAT_000b75e4;\n          local_38 = DAT_000b75e8;\n          local_34 = DAT_000b75ec;\n          local_30 = DAT_000b75f0;\n          local_2c = DAT_000b75f4;\n          local_28 = DAT_000b75f8;\n          local_24 = DAT_000b75fc;\n          if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }\n          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;\n          DAT_000b9d20 = 0;\n          lVar29 = 0;\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          lVar28 = 0;\n          local_a4 = (undefined4 *)0x0;\n          local_94 = 0;\n          local_b8 = (byte *)0x0;\n          local_90 = 0;\n          local_9c = PTR_stdout_000b3fd8;\n          local_48 = pbVar5;\n          lVar30 = 0;\n          if (local_bc < pbVar5) goto LAB_0005ad11;\n        }" ({ "{") (expression_statement "iVar14 = 0x10;" (assignment_expression "iVar14 = 0x10" (identifier "iVar14") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "pbVar20 = *(byte **)(param_1 + 8);" (assignment_expression "pbVar20 = *(byte **)(param_1 + 8)" (identifier "pbVar20") (= "=") (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 "pbVar16 = (byte *)".debug_line.dwo";" (assignment_expression "pbVar16 = (byte *)".debug_line.dwo"" (identifier "pbVar16") (= "=") (cast_expression "(byte *)".debug_line.dwo"" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (string_literal "".debug_line.dwo"" (" """) (string_content ".debug_line.dwo") (" """)))) (; ";")) (do_statement "do {\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          } while (bVar24);" (do "do") (compound_statement "{\n            if (iVar14 == 0) break;\n            iVar14 = iVar14 + -1;\n            bVar21 = *pbVar20 < *pbVar16;\n            bVar24 = *pbVar20 == *pbVar16;\n            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;\n            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;\n          }" ({ "{") (if_statement "if (iVar14 == 0) break;" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar14 = iVar14 + -1;" (assignment_expression "iVar14 = iVar14 + -1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + -1" (identifier "iVar14") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar21 = *pbVar20 < *pbVar16;" (assignment_expression "bVar21 = *pbVar20 < *pbVar16" (identifier "bVar21") (= "=") (binary_expression "*pbVar20 < *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (< "<") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "bVar24 = *pbVar20 == *pbVar16;" (assignment_expression "bVar24 = *pbVar20 == *pbVar16" (identifier "bVar24") (= "=") (binary_expression "*pbVar20 == *pbVar16" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (== "==") (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar20 + (uint)bVar26 * -2" (identifier "pbVar20") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;" (assignment_expression "pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + (uint)bVar26 * -2 + 1" (binary_expression "pbVar16 + (uint)bVar26 * -2" (identifier "pbVar16") (+ "+") (binary_expression "(uint)bVar26 * -2" (cast_expression "(uint)bVar26" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar26")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar24)" (( "(") (identifier "bVar24") () ")")) (; ";")) (if_statement "if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;" (if "if") (parenthesized_expression "((!bVar21 && !bVar24) == bVar21)" (( "(") (binary_expression "(!bVar21 && !bVar24) == bVar21" (parenthesized_expression "(!bVar21 && !bVar24)" (( "(") (binary_expression "!bVar21 && !bVar24" (unary_expression "!bVar21" (! "!") (identifier "bVar21")) (&& "&&") (unary_expression "!bVar24" (! "!") (identifier "bVar24"))) () ")")) (== "==") (identifier "bVar21")) () ")")) (goto_statement "goto LAB_0005c150;" (goto "goto") (statement_identifier "LAB_0005c150") (; ";"))) (expression_statement "local_20[0] = DAT_000b7600;" (assignment_expression "local_20[0] = DAT_000b7600" (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "DAT_000b7600")) (; ";")) (expression_statement "local_40 = DAT_000b75e0;" (assignment_expression "local_40 = DAT_000b75e0" (identifier "local_40") (= "=") (identifier "DAT_000b75e0")) (; ";")) (expression_statement "local_3c = DAT_000b75e4;" (assignment_expression "local_3c = DAT_000b75e4" (identifier "local_3c") (= "=") (identifier "DAT_000b75e4")) (; ";")) (expression_statement "local_38 = DAT_000b75e8;" (assignment_expression "local_38 = DAT_000b75e8" (identifier "local_38") (= "=") (identifier "DAT_000b75e8")) (; ";")) (expression_statement "local_34 = DAT_000b75ec;" (assignment_expression "local_34 = DAT_000b75ec" (identifier "local_34") (= "=") (identifier "DAT_000b75ec")) (; ";")) (expression_statement "local_30 = DAT_000b75f0;" (assignment_expression "local_30 = DAT_000b75f0" (identifier "local_30") (= "=") (identifier "DAT_000b75f0")) (; ";")) (expression_statement "local_2c = DAT_000b75f4;" (assignment_expression "local_2c = DAT_000b75f4" (identifier "local_2c") (= "=") (identifier "DAT_000b75f4")) (; ";")) (expression_statement "local_28 = DAT_000b75f8;" (assignment_expression "local_28 = DAT_000b75f8" (identifier "local_28") (= "=") (identifier "DAT_000b75f8")) (; ";")) (expression_statement "local_24 = DAT_000b75fc;" (assignment_expression "local_24 = DAT_000b75fc" (identifier "local_24") (= "=") (identifier "DAT_000b75fc")) (; ";")) (if_statement "if ((char)DAT_000b75fc == '\0') {\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" (if "if") (parenthesized_expression "((char)DAT_000b75fc == '\0')" (( "(") (binary_expression "(char)DAT_000b75fc == '\0'" (cast_expression "(char)DAT_000b75fc" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "DAT_000b75fc")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            local_48 = pbVar5;\n            uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);\n            warn(uVar11);\n            return 0;\n          }" ({ "{") (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" (identifier "local_48") (= "=") (identifier "pbVar5")) (; ";")) (expression_statement "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5);" (assignment_expression "uVar11 = dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" (identifier "dcgettext") (argument_list "(0,\n                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"\n                               ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Partial .debug_line. section encountered without a prior full .debug_line section\n"" (" """) (string_content "Partial .debug_line. section encountered without a prior full .debug_line section") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff" (identifier "DAT_000b9d18") (= "=") (binary_expression "DAT_000b75f4 >> 0x10 & 0xff" (binary_expression "DAT_000b75f4 >> 0x10" (identifier "DAT_000b75f4") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" (identifier "DAT_000b9d20") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" (identifier "lVar29") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" (identifier "DAT_000b9d0c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" (identifier "DAT_000b9d10") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" (identifier "DAT_000b9d14") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" (identifier "DAT_000b9d1c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" (identifier "DAT_000b9d24") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar28 = 0;" (assignment_expression "lVar28 = 0" (identifier "lVar28") (= "=") (number_literal "0")) (; ";")) (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 "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" (identifier "local_b8") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_90 = 0;" (assignment_expression "local_90 = 0" (identifier "local_90") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" (identifier "local_9c") (= "=") (identifier "PTR_stdout_000b3fd8")) (; ";")) (expression_statement "local_48 = pbVar5;" (assignment_expression "local_48 = pbVar5" (identifier "local_48") (= "=") (identifier "pbVar5")) (; ";")) (expression_statement "lVar30 = 0;" (assignment_expression "lVar30 = 0" (identifier "lVar30") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_bc < pbVar5) goto LAB_0005ad11;" (if "if") (parenthesized_expression "(local_bc < pbVar5)" (( "(") (binary_expression "local_bc < pbVar5" (identifier "local_bc") (< "<") (identifier "pbVar5")) () ")")) (goto_statement "goto LAB_0005ad11;" (goto "goto") (statement_identifier "LAB_0005ad11") (; ";"))) (} "}")) (else_clause "else {\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" (else "else") (compound_statement "{\nLAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);\n          if (local_90 == 0) {\n            return 0;\n          }\n          if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }\n          DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n          DAT_000b9d00 = 0;\n          DAT_000b9d20 = 0;\n          uVar19 = local_24 >> 8 & 0xff;\n          DAT_000b9d04 = 0;\n          pbVar20 = (byte *)(local_90 + -1 + uVar19);\n          DAT_000b9d08 = 0;\n          DAT_000b9d0c = 1;\n          DAT_000b9d10 = (undefined1 *)0x1;\n          DAT_000b9d14 = 0;\n          DAT_000b9d1c = 0;\n          DAT_000b9d24 = 0;\n          if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }\n          if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }\n          pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);\n          printf(pcVar6);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n          DAT_000b75e0 = local_40;\n          DAT_000b75e4 = local_3c;\n          DAT_000b75e8 = local_38;\n          DAT_000b75ec = local_34;\n          DAT_000b75f0 = local_30;\n          DAT_000b75f4 = local_2c;\n          DAT_000b75f8 = local_28;\n          DAT_000b75fc = local_24;\n          DAT_000b7600 = local_20[0];\n          local_bc = pbVar16;\n          local_9c = PTR_stdout_000b3fd8;\n          lVar30 = lVar29;\n          if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }\n        }" ({ "{") (labeled_statement "LAB_0005c150:\n          local_90 = FUN_0004d730(&local_40,&local_48);" (statement_identifier "LAB_0005c150") (: ":") (expression_statement "local_90 = FUN_0004d730(&local_40,&local_48);" (assignment_expression "local_90 = FUN_0004d730(&local_40,&local_48)" (identifier "local_90") (= "=") (call_expression "FUN_0004d730(&local_40,&local_48)" (identifier "FUN_0004d730") (argument_list "(&local_40,&local_48)" (( "(") (pointer_expression "&local_40" (& "&") (identifier "local_40")) (, ",") (pointer_expression "&local_48" (& "&") (identifier "local_48")) () ")")))) (; ";"))) (if_statement "if (local_90 == 0) {\n            return 0;\n          }" (if "if") (parenthesized_expression "(local_90 == 0)" (( "(") (binary_expression "local_90 == 0" (identifier "local_90") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            return 0;\n          }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if ((byte)local_24 == '\0') {\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" (if "if") (parenthesized_expression "((byte)local_24 == '\0')" (( "(") (binary_expression "(byte)local_24 == '\0'" (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);\n            warn(uVar11);\n            local_24 = CONCAT31(local_24._1_3_,1);\n          }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5)" (identifier "dcgettext") (argument_list "(0,"Line range of 0 is invalid, using 1 instead\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Line range of 0 is invalid, using 1 instead\n"" (" """) (string_content "Line range of 0 is invalid, using 1 instead") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_24 = CONCAT31(local_24._1_3_,1);" (assignment_expression "local_24 = CONCAT31(local_24._1_3_,1)" (identifier "local_24") (= "=") (call_expression "CONCAT31(local_24._1_3_,1)" (identifier "CONCAT31") (argument_list "(local_24._1_3_,1)" (( "(") (field_expression "local_24._1_3_" (identifier "local_24") (. ".") (field_identifier "_1_3_")) (, ",") (number_literal "1") () ")")))) (; ";")) (} "}"))) (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" (identifier "DAT_000b9d18") (= "=") (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" (identifier "local_2c") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" (identifier "DAT_000b9d00") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" (identifier "DAT_000b9d20") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = local_24 >> 8 & 0xff;" (assignment_expression "uVar19 = local_24 >> 8 & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_24 >> 8 & 0xff" (binary_expression "local_24 >> 8" (identifier "local_24") (>> ">>") (number_literal "8")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" (identifier "DAT_000b9d04") (= "=") (number_literal "0")) (; ";")) (expression_statement "pbVar20 = (byte *)(local_90 + -1 + uVar19);" (assignment_expression "pbVar20 = (byte *)(local_90 + -1 + uVar19)" (identifier "pbVar20") (= "=") (cast_expression "(byte *)(local_90 + -1 + uVar19)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_90 + -1 + uVar19)" (( "(") (binary_expression "local_90 + -1 + uVar19" (binary_expression "local_90 + -1" (identifier "local_90") (+ "+") (number_literal "-1")) (+ "+") (identifier "uVar19")) () ")")))) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" (identifier "DAT_000b9d0c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" (identifier "DAT_000b9d10") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" (identifier "DAT_000b9d14") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" (identifier "DAT_000b9d1c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" (identifier "DAT_000b9d24") (= "=") (number_literal "0")) (; ";")) (if_statement "if (pbVar5 <= pbVar20) {\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" (if "if") (parenthesized_expression "(pbVar5 <= pbVar20)" (( "(") (binary_expression "pbVar5 <= pbVar20" (identifier "pbVar5") (<= "<=") (identifier "pbVar20")) () ")")) (compound_statement "{\n            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);\n            warn(uVar11,uVar19);\n            return 0;\n          }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);" (assignment_expression "uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"opcode base of %d extends beyond end of section\n",5)" (identifier "dcgettext") (argument_list "(0,"opcode base of %d extends beyond end of section\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""opcode base of %d extends beyond end of section\n"" (" """) (string_content "opcode base of %d extends beyond end of section") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" (identifier "warn") (argument_list "(uVar11,uVar19)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar19") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (if_statement "if ((ushort)local_38 < 5) {\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }\n          else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" (if "if") (parenthesized_expression "((ushort)local_38 < 5)" (( "(") (binary_expression "(ushort)local_38 < 5" (cast_expression "(ushort)local_38" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "local_38")) (< "<") (number_literal "5")) () ")")) (compound_statement "{\n            local_b4 = (byte *)0x0;\n            local_b0 = 0;\n            local_a4 = (undefined4 *)0x0;\n            pbVar16 = pbVar20;\n            if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }\n            lVar28 = CONCAT44(local_b0,local_b4);\n            pbVar20 = pbVar16 + 1;\n            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }\n          }" ({ "{") (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" (identifier "local_b4") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (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 "pbVar16 = pbVar20;" (assignment_expression "pbVar16 = pbVar20" (identifier "pbVar16") (= "=") (identifier "pbVar20")) (; ";")) (if_statement "if (*pbVar20 != 0) {\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" (if "if") (parenthesized_expression "(*pbVar20 != 0)" (( "(") (binary_expression "*pbVar20 != 0" (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              local_b0 = 0;\n              local_b4 = (byte *)0x0;\n              do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);\n              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);\n              bVar13 = *pbVar20;\n              puVar17 = local_a4;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }\n            }" ({ "{") (expression_statement "local_b0 = 0;" (assignment_expression "local_b0 = 0" (identifier "local_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b4 = (byte *)0x0;" (assignment_expression "local_b4 = (byte *)0x0" (identifier "local_b4") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar16 != 0);" (do "do") (compound_statement "{\n                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);\n                bVar21 = 0xfffffffe < local_b4;\n                local_b4 = (byte *)((int)local_b4 + 1);\n                pbVar16 = pbVar16 + sVar8 + 1;\n                local_b0 = local_b0 + bVar21;\n                if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" ({ "{") (expression_statement "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);" (assignment_expression "sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" (identifier "strnlen") (argument_list "((char *)pbVar16,(int)pbVar5 - (int)pbVar16)" (( "(") (cast_expression "(char *)pbVar16" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar16")) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16"))) () ")")))) (; ";")) (expression_statement "bVar21 = 0xfffffffe < local_b4;" (assignment_expression "bVar21 = 0xfffffffe < local_b4" (identifier "bVar21") (= "=") (binary_expression "0xfffffffe < local_b4" (number_literal "0xfffffffe") (< "<") (identifier "local_b4"))) (; ";")) (expression_statement "local_b4 = (byte *)((int)local_b4 + 1);" (assignment_expression "local_b4 = (byte *)((int)local_b4 + 1)" (identifier "local_b4") (= "=") (cast_expression "(byte *)((int)local_b4 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (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 "pbVar16 = pbVar16 + sVar8 + 1;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 1" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + sVar8 + 1" (binary_expression "pbVar16 + sVar8" (identifier "pbVar16") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_b0 = local_b0 + bVar21;" (assignment_expression "local_b0 = local_b0 + bVar21" (identifier "local_b0") (= "=") (binary_expression "local_b0 + bVar21" (identifier "local_b0") (+ "+") (identifier "bVar21"))) (; ";")) (if_statement "if (pbVar5 <= pbVar16) {\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" (if "if") (parenthesized_expression "(pbVar5 <= pbVar16)" (( "(") (binary_expression "pbVar5 <= pbVar16" (identifier "pbVar5") (<= "<=") (identifier "pbVar16")) () ")")) (compound_statement "{\n                  pcVar6 = "directory table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" ({ "{") (expression_statement "pcVar6 = "directory table ends unexpectedly\n";" (assignment_expression "pcVar6 = "directory table ends unexpectedly\n"" (identifier "pcVar6") (= "=") (string_literal ""directory table ends unexpectedly\n"" (" """) (string_content "directory table ends unexpectedly") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0005c678;" (goto "goto") (statement_identifier "LAB_0005c678") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(*pbVar16 != 0)" (( "(") (binary_expression "*pbVar16 != 0" (pointer_expression "*pbVar16" (* "*") (identifier "pbVar16")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4)" (identifier "local_a4") (= "=") (cast_expression "(undefined4 *)FUN_0006b190((int)local_b4 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190((int)local_b4 * 4)" (identifier "FUN_0006b190") (argument_list "((int)local_b4 * 4)" (( "(") (binary_expression "(int)local_b4 * 4" (cast_expression "(int)local_b4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b4")) (* "*") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" (identifier "bVar13") (= "=") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20"))) (; ";")) (expression_statement "puVar17 = local_a4;" (assignment_expression "puVar17 = local_a4" (identifier "puVar17") (= "=") (identifier "local_a4")) (; ";")) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" (while "while") (parenthesized_expression "(bVar13 != 0)" (( "(") (binary_expression "bVar13 != 0" (identifier "bVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *puVar17 = pbVar20;\n                puVar17 = puVar17 + 1;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                bVar13 = *pbVar20;\n              }" ({ "{") (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) (= "=") (identifier "pbVar20")) (; ";")) (expression_statement "puVar17 = puVar17 + 1;" (assignment_expression "puVar17 = puVar17 + 1" (identifier "puVar17") (= "=") (binary_expression "puVar17 + 1" (identifier "puVar17") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" (identifier "strnlen") (argument_list "((char *)pbVar20,(int)pbVar20 - (int)pbVar5)" (( "(") (cast_expression "(char *)pbVar20" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar20")) (, ",") (binary_expression "(int)pbVar20 - (int)pbVar5" (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")) (- "-") (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5"))) () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" (identifier "pbVar20") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" (identifier "bVar13") (= "=") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "lVar28 = CONCAT44(local_b0,local_b4);" (assignment_expression "lVar28 = CONCAT44(local_b0,local_b4)" (identifier "lVar28") (= "=") (call_expression "CONCAT44(local_b0,local_b4)" (identifier "CONCAT44") (argument_list "(local_b0,local_b4)" (( "(") (identifier "local_b0") (, ",") (identifier "local_b4") () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar16 + 1" (identifier "pbVar16") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }\n            else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" (if "if") (parenthesized_expression "((pbVar20 < pbVar5) && (pbVar16[1] != 0))" (( "(") (binary_expression "(pbVar20 < pbVar5) && (pbVar16[1] != 0)" (parenthesized_expression "(pbVar20 < pbVar5)" (( "(") (binary_expression "pbVar20 < pbVar5" (identifier "pbVar20") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(pbVar16[1] != 0)" (( "(") (binary_expression "pbVar16[1] != 0" (subscript_expression "pbVar16[1]" (identifier "pbVar16") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n              local_94 = 0;\n              pbVar15 = pbVar20;\n              do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);\n              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);\n              bVar13 = pbVar16[1];\n              puVar17 = (undefined4 *)local_b8;\n              while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }\n              pbVar16 = pbVar15 + 1;\n              if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }\n            }" ({ "{") (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "pbVar15 = pbVar20;" (assignment_expression "pbVar15 = pbVar20" (identifier "pbVar15") (= "=") (identifier "pbVar20")) (; ";")) (do_statement "do {\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              } while (*pbVar15 != 0);" (do "do") (compound_statement "{\n                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);\n                pbVar15 = pbVar15 + sVar8 + 1;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                FUN_0004f990(pbVar15,&local_44,0,pbVar5);\n                pbVar15 = pbVar15 + local_44;\n                local_94 = local_94 + 1;\n                if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }\n              }" ({ "{") (expression_statement "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);" (assignment_expression "sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" (identifier "strnlen") (argument_list "((char *)pbVar15,(int)pbVar5 - (int)pbVar15)" (( "(") (cast_expression "(char *)pbVar15" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar15")) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar15" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar15"))) () ")")))) (; ";")) (expression_statement "pbVar15 = pbVar15 + sVar8 + 1;" (assignment_expression "pbVar15 = pbVar15 + sVar8 + 1" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + sVar8 + 1" (binary_expression "pbVar15 + sVar8" (identifier "pbVar15") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar15,&local_44,0,pbVar5)" (( "(") (identifier "pbVar15") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + local_44" (identifier "pbVar15") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar15,&local_44,0,pbVar5)" (( "(") (identifier "pbVar15") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + local_44" (identifier "pbVar15") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(pbVar15,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar15,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar15,&local_44,0,pbVar5)" (( "(") (identifier "pbVar15") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar15 = pbVar15 + local_44;" (assignment_expression "pbVar15 = pbVar15 + local_44" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + local_44" (identifier "pbVar15") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" (identifier "local_94") (= "=") (binary_expression "local_94 + 1" (identifier "local_94") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pbVar5 <= pbVar15) {\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" (if "if") (parenthesized_expression "(pbVar5 <= pbVar15)" (( "(") (binary_expression "pbVar5 <= pbVar15" (identifier "pbVar5") (<= "<=") (identifier "pbVar15")) () ")")) (compound_statement "{\n                  pcVar6 = "file table ends unexpectedly\n";\n                  goto LAB_0005c678;\n                }" ({ "{") (expression_statement "pcVar6 = "file table ends unexpectedly\n";" (assignment_expression "pcVar6 = "file table ends unexpectedly\n"" (identifier "pcVar6") (= "=") (string_literal ""file table ends unexpectedly\n"" (" """) (string_content "file table ends unexpectedly") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0005c678;" (goto "goto") (statement_identifier "LAB_0005c678") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(*pbVar15 != 0)" (( "(") (binary_expression "*pbVar15 != 0" (pointer_expression "*pbVar15" (* "*") (identifier "pbVar15")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b190(local_94 * 0x10)" (identifier "local_b8") (= "=") (cast_expression "(byte *)FUN_0006b190(local_94 * 0x10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190(local_94 * 0x10)" (identifier "FUN_0006b190") (argument_list "(local_94 * 0x10)" (( "(") (binary_expression "local_94 * 0x10" (identifier "local_94") (* "*") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "bVar13 = pbVar16[1];" (assignment_expression "bVar13 = pbVar16[1]" (identifier "bVar13") (= "=") (subscript_expression "pbVar16[1]" (identifier "pbVar16") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "puVar17 = (undefined4 *)local_b8;" (assignment_expression "puVar17 = (undefined4 *)local_b8" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)local_b8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_b8"))) (; ";")) (while_statement "while (bVar13 != 0) {\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" (while "while") (parenthesized_expression "(bVar13 != 0)" (( "(") (binary_expression "bVar13 != 0" (identifier "bVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                *puVar17 = pbVar20;\n                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);\n                pbVar20 = pbVar20 + sVar8 + 1;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[1] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n                pbVar20 = pbVar20 + local_44;\n                puVar17[3] = uVar11;\n                puVar17 = puVar17 + 4;\n                bVar13 = *pbVar20;\n              }" ({ "{") (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) (= "=") (identifier "pbVar20")) (; ";")) (expression_statement "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);" (assignment_expression "sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "sVar8") (= "=") (call_expression "strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (identifier "strnlen") (argument_list "((char *)pbVar20,(int)pbVar5 - (int)pbVar20)" (( "(") (cast_expression "(char *)pbVar20" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar20")) (, ",") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20"))) () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + sVar8 + 1;" (assignment_expression "pbVar20 = pbVar20 + sVar8 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + sVar8 + 1" (binary_expression "pbVar20 + sVar8" (identifier "pbVar20") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" (identifier "puVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" (identifier "puVar17") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar20 + local_44;" (assignment_expression "pbVar20 = pbVar20 + local_44" (identifier "pbVar20") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" (identifier "puVar17") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "puVar17 = puVar17 + 4;" (assignment_expression "puVar17 = puVar17 + 4" (identifier "puVar17") (= "=") (binary_expression "puVar17 + 4" (identifier "puVar17") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "bVar13 = *pbVar20;" (assignment_expression "bVar13 = *pbVar20" (identifier "bVar13") (= "=") (pointer_expression "*pbVar20" (* "*") (identifier "pbVar20"))) (; ";")) (} "}"))) (expression_statement "pbVar16 = pbVar15 + 1;" (assignment_expression "pbVar16 = pbVar15 + 1" (identifier "pbVar16") (= "=") (binary_expression "pbVar15 + 1" (identifier "pbVar15") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (local_a4 == (undefined4 *)0x0) {\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }\n              else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" (if "if") (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" (( "(") (binary_expression "local_a4 == (undefined4 *)0x0" (identifier "local_a4") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                uVar11 = *(undefined4 *)local_b8;\n                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);\n                printf(pcVar6,uVar11);\n              }" ({ "{") (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" (identifier "uVar11") (= "=") (pointer_expression "*(undefined4 *)local_b8" (* "*") (cast_expression "(undefined4 *)local_b8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_b8")))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"CU: %s:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"CU: %s:\n",5)" (identifier "dcgettext") (argument_list "(0,"CU: %s:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""CU: %s:\n"" (" """) (string_content "CU: %s:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11);" (call_expression "printf(pcVar6,uVar11)" (identifier "printf") (argument_list "(pcVar6,uVar11)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")) (else_clause "else {\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" (else "else") (compound_statement "{\nLAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);\n                if (uVar19 == 0) goto LAB_0005cd5b;\nLAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n                local_b4 = (byte *)lVar28;\n                if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }\n                uVar11 = *(undefined4 *)local_b8;\n                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;\n                printf("%s:\n",uVar11);\n              }" ({ "{") (labeled_statement "LAB_0005cd50:\n                uVar19 = *(uint *)((int)local_b8 + 4);" (statement_identifier "LAB_0005cd50") (: ":") (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" (identifier "uVar19") (= "=") (pointer_expression "*(uint *)((int)local_b8 + 4)" (* "*") (cast_expression "(uint *)((int)local_b8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + 4)" (( "(") (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (number_literal "4")) () ")"))))) (; ";"))) (if_statement "if (uVar19 == 0) goto LAB_0005cd5b;" (if "if") (parenthesized_expression "(uVar19 == 0)" (( "(") (binary_expression "uVar19 == 0" (identifier "uVar19") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005cd5b;" (goto "goto") (statement_identifier "LAB_0005cd5b") (; ";"))) (labeled_statement "LAB_0005cdc0:\n                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (statement_identifier "LAB_0005cdc0") (: ":") (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" (identifier "local_b0") (= "=") (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar28 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar28")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";"))) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" (identifier "local_b4") (= "=") (cast_expression "(byte *)lVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "lVar28"))) (; ";")) (if_statement "if (lVar28 == 0) {\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }\n                else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" (if "if") (parenthesized_expression "(lVar28 == 0)" (( "(") (binary_expression "lVar28 == 0" (identifier "lVar28") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                }" ({ "{") (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" (identifier "pcVar6") (= "=") (string_literal ""<unknown>"" (" """) (string_content "<unknown>") (" """))) (; ";")) (labeled_statement "LAB_0005d3fb:\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);" (statement_identifier "LAB_0005d3fb") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,pcVar6,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar6,5)" (identifier "dcgettext") (argument_list "(0,pcVar6,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") (, ",") (number_literal "5") () ")"))))) (; ";"))) (} "}")) (else_clause "else {\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" (else "else") (compound_statement "{\n                  if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }\n                  pcVar6 = (char *)local_a4[uVar19 - 1];\n                }" ({ "{") (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" (if "if") (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" (( "(") (binary_expression "local_b0 < (local_b4 < uVar19)" (identifier "local_b0") (< "<") (parenthesized_expression "(local_b4 < uVar19)" (( "(") (binary_expression "local_b4 < uVar19" (identifier "local_b4") (< "<") (identifier "uVar19")) () ")"))) () ")")) (compound_statement "{\n                    uVar11 = FUN_0004cb50(0);\n                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                    warn(uVar12,uVar19,uVar11);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005d3fb;\n                  }" ({ "{") (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" (identifier "dcgettext") (argument_list "(0,"directory index %u > number of directories %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""directory index %u > number of directories %s\n"" (" """) (string_content "directory index %u > number of directories %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" (identifier "warn") (argument_list "(uVar12,uVar19,uVar11)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar19") (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" (identifier "pcVar6") (= "=") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """))) (; ";")) (goto_statement "goto LAB_0005d3fb;" (goto "goto") (statement_identifier "LAB_0005d3fb") (; ";")) (} "}"))) (expression_statement "pcVar6 = (char *)local_a4[uVar19 - 1];" (assignment_expression "pcVar6 = (char *)local_a4[uVar19 - 1]" (identifier "pcVar6") (= "=") (cast_expression "(char *)local_a4[uVar19 - 1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "local_a4[uVar19 - 1]" (identifier "local_a4") ([ "[") (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1")) (] "]")))) (; ";")) (} "}")))) (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" (identifier "uVar11") (= "=") (pointer_expression "*(undefined4 *)local_b8" (* "*") (cast_expression "(undefined4 *)local_b8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_b8")))) (; ";")) (if_statement "if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))\n                goto LAB_0005cd63;" (if "if") (parenthesized_expression "((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))" (( "(") (binary_expression "(DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c)" (parenthesized_expression "(DAT_000b9da4 != 0)" (( "(") (binary_expression "DAT_000b9da4 != 0" (identifier "DAT_000b9da4") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(sVar8 = strlen(pcVar6), sVar8 < 0x4c)" (( "(") (comma_expression "sVar8 = strlen(pcVar6), sVar8 < 0x4c" (assignment_expression "sVar8 = strlen(pcVar6)" (identifier "sVar8") (= "=") (call_expression "strlen(pcVar6)" (identifier "strlen") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")")))) (, ",") (binary_expression "sVar8 < 0x4c" (identifier "sVar8") (< "<") (number_literal "0x4c"))) () ")"))) () ")")) (goto_statement "goto LAB_0005cd63;" (goto "goto") (statement_identifier "LAB_0005cd63") (; ";"))) (expression_statement "printf("%s:\n",uVar11);" (call_expression "printf("%s:\n",uVar11)" (identifier "printf") (argument_list "("%s:\n",uVar11)" (( "(") (string_literal ""%s:\n"" (" """) (string_content "%s:") (escape_sequence "\n") (" """)) (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" (else "else") (compound_statement "{\n              local_94 = 0;\n              pbVar16 = pbVar16 + 2;\n              local_b8 = (byte *)0x0;\n            }" ({ "{") (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "pbVar16 = pbVar16 + 2;" (assignment_expression "pbVar16 = pbVar16 + 2" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + 2" (identifier "pbVar16") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "local_b8 = (byte *)0x0;" (assignment_expression "local_b8 = (byte *)0x0" (identifier "local_b8") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" (else "else") (compound_statement "{\n            FUN_0004e130();\n            pbVar15 = (byte *)(uVar19 + local_90);\n            pbVar16 = pbVar15;\n            if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }\n            local_bc = (byte *)&local_44;\n            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }\n            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);\n            if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }\n            local_60 = pbVar16 + 1;\n            if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }\n            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n            pbVar16 = pbVar16 + local_44;\n            if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }\n            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);\n            if (local_94 == 0) goto LAB_0005cd50;\n            local_ac = (undefined4 *)((int)local_b8 + 4);\n            local_78 = 0;\n            do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);\n            uVar19 = *(uint *)((int)local_b8 + 4);\n            if (uVar19 != 0) goto LAB_0005cdc0;\nLAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;\n            pcVar6 = ".";\nLAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);\n            printf(pcVar9,pcVar6,uVar11);\n          }" ({ "{") (expression_statement "FUN_0004e130();" (call_expression "FUN_0004e130()" (identifier "FUN_0004e130") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pbVar15 = (byte *)(uVar19 + local_90);" (assignment_expression "pbVar15 = (byte *)(uVar19 + local_90)" (identifier "pbVar15") (= "=") (cast_expression "(byte *)(uVar19 + local_90)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar19 + local_90)" (( "(") (binary_expression "uVar19 + local_90" (identifier "uVar19") (+ "+") (identifier "local_90")) () ")")))) (; ";")) (expression_statement "pbVar16 = pbVar15;" (assignment_expression "pbVar16 = pbVar15" (identifier "pbVar16") (= "=") (identifier "pbVar15")) (; ";")) (if_statement "if (pbVar15 < pbVar5) {\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }\n            else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" (if "if") (parenthesized_expression "(pbVar15 < pbVar5)" (( "(") (binary_expression "pbVar15 < pbVar5" (identifier "pbVar15") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n              iVar14 = 1;\nLAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);\n              local_ac = (undefined4 *)(uVar19 & 0xff);\n              if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }\n            }" ({ "{") (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_0005d415:\n              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" (statement_identifier "LAB_0005d415") (: ":") (expression_statement "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14)" (identifier "uVar19") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar20,iVar14)" (( "(") (identifier "pbVar20") (, ",") (identifier "iVar14") () ")")))) (; ";"))) (expression_statement "local_ac = (undefined4 *)(uVar19 & 0xff);" (assignment_expression "local_ac = (undefined4 *)(uVar19 & 0xff)" (identifier "local_ac") (= "=") (cast_expression "(undefined4 *)(uVar19 & 0xff)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar19 & 0xff)" (( "(") (binary_expression "uVar19 & 0xff" (identifier "uVar19") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (if_statement "if (local_ac != (undefined4 *)0x0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" (if "if") (parenthesized_expression "(local_ac != (undefined4 *)0x0)" (( "(") (binary_expression "local_ac != (undefined4 *)0x0" (identifier "local_ac") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);\n              }" ({ "{") (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" (identifier "iVar14") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" (identifier "uVar19") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);" (do "do") (compound_statement "{\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" ({ "{") (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,&local_44,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(pbVar16,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,&local_44,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" (identifier "bVar21") (= "=") (binary_expression "0xfffffffe < uVar19" (number_literal "0xfffffffe") (< "<") (identifier "uVar19"))) (; ";")) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" (identifier "uVar19") (= "=") (binary_expression "uVar19 + 1" (identifier "uVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" (identifier "iVar14") (= "=") (binary_expression "iVar14 + (uint)bVar21" (identifier "iVar14") (+ "+") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar14 != 0 || local_ac != (undefined4 *)uVar19)" (( "(") (binary_expression "iVar14 != 0 || local_ac != (undefined4 *)uVar19" (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_ac != (undefined4 *)uVar19" (identifier "local_ac") (!= "!=") (cast_expression "(undefined4 *)uVar19" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "uVar19")))) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" (else "else") (compound_statement "{\n              iVar14 = (int)pbVar5 - (int)pbVar20;\n              if (iVar14 - 1U < 8) goto LAB_0005d415;\n              local_ac = (undefined4 *)0x0;\n            }" ({ "{") (expression_statement "iVar14 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")))) (; ";")) (if_statement "if (iVar14 - 1U < 8) goto LAB_0005d415;" (if "if") (parenthesized_expression "(iVar14 - 1U < 8)" (( "(") (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")) (< "<") (number_literal "8")) () ")")) (goto_statement "goto LAB_0005d415;" (goto "goto") (statement_identifier "LAB_0005d415") (; ";"))) (expression_statement "local_ac = (undefined4 *)0x0;" (assignment_expression "local_ac = (undefined4 *)0x0" (identifier "local_ac") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (expression_statement "local_bc = (byte *)&local_44;" (assignment_expression "local_bc = (byte *)&local_44" (identifier "local_bc") (= "=") (cast_expression "(byte *)&local_44" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_44" (& "&") (identifier "local_44")))) (; ";")) (expression_statement "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "lVar28") (= "=") (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,local_bc,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\n              pcVar6 = "Corrupt directories list\n";\n              goto LAB_0005c678;\n            }" ({ "{") (expression_statement "pcVar6 = "Corrupt directories list\n";" (assignment_expression "pcVar6 = "Corrupt directories list\n"" (identifier "pcVar6") (= "=") (string_literal ""Corrupt directories list\n"" (" """) (string_content "Corrupt directories list") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto LAB_0005c678;" (goto "goto") (statement_identifier "LAB_0005c678") (; ";")) (} "}"))) (expression_statement "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);" (assignment_expression "local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2)" (identifier "local_a4") (= "=") (cast_expression "(undefined4 *)FUN_0006b190((int)lVar28 << 2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190((int)lVar28 << 2)" (identifier "FUN_0006b190") (argument_list "((int)lVar28 << 2)" (( "(") (binary_expression "(int)lVar28 << 2" (cast_expression "(int)lVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar28")) (<< "<<") (number_literal "2")) () ")"))))) (; ";")) (if_statement "if (lVar28 != 0) {\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" (if "if") (parenthesized_expression "(lVar28 != 0)" (( "(") (binary_expression "lVar28 != 0" (identifier "lVar28") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              local_9c = (byte *)0x0;\n              local_98 = 0;\n              do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));\n            }" ({ "{") (expression_statement "local_9c = (byte *)0x0;" (assignment_expression "local_9c = (byte *)0x0" (identifier "local_9c") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_98 = 0;" (assignment_expression "local_98 = 0" (identifier "local_98") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              } while (lVar28 != CONCAT44(local_98,local_9c));" (do "do") (compound_statement "{\n                if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }\n                if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }\n                bVar21 = 0xfffffffe < local_9c;\n                local_9c = (byte *)((int)local_9c + 1);\n                local_98 = local_98 + (uint)bVar21;\n              }" ({ "{") (if_statement "if (local_ac != (undefined4 *)0x0) {\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" (if "if") (parenthesized_expression "(local_ac != (undefined4 *)0x0)" (( "(") (binary_expression "local_ac != (undefined4 *)0x0" (identifier "local_ac") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  local_94 = 0;\n                  local_b8 = pbVar15;\n                  do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);\n                }" ({ "{") (expression_statement "local_94 = 0;" (assignment_expression "local_94 = 0" (identifier "local_94") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_b8 = pbVar15;" (assignment_expression "local_b8 = pbVar15" (identifier "local_b8") (= "=") (identifier "pbVar15")) (; ";")) (do_statement "do {\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  } while (local_ac != (undefined4 *)local_94);" (do "do") (compound_statement "{\n                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    local_b8 = local_b8 + local_44;\n                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);\n                    uVar19 = local_20[0];\n                    local_b8 = local_b8 + local_44;\n                    if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }\n                    if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }\n                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);\n                    local_94 = local_94 + 1;\n                  }" ({ "{") (expression_statement "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" (identifier "lVar29") (= "=") (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b8,local_bc,0,pbVar5)" (( "(") (identifier "local_b8") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" (identifier "local_b8") (= "=") (binary_expression "local_b8 + local_44" (identifier "local_b8") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5)" (identifier "lVar30") (= "=") (call_expression "FUN_0004f990(local_b8,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_b8,local_bc,0,pbVar5)" (( "(") (identifier "local_b8") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" (identifier "uVar19") (= "=") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "local_b8 = local_b8 + local_44;" (assignment_expression "local_b8 = local_b8 + local_44" (identifier "local_b8") (= "=") (binary_expression "local_b8 + local_44" (identifier "local_b8") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (pbVar5 == pbVar16) {\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\n                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                      warn(uVar11);\n                      goto LAB_0005c9e0;\n                    }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Corrupt directories list\n",5)" (identifier "dcgettext") (argument_list "(0,"Corrupt directories list\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Corrupt directories list\n"" (" """) (string_content "Corrupt directories list") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (goto_statement "goto LAB_0005c9e0;" (goto "goto") (statement_identifier "LAB_0005c9e0") (; ";")) (} "}"))) (if_statement "if (lVar29 == 1) {\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" (if "if") (parenthesized_expression "(lVar29 == 1)" (( "(") (binary_expression "lVar29 == 1" (identifier "lVar29") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                      if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }\n                    }" ({ "{") (if_statement "if (lVar30 == 8) {\n                        local_a4[(int)local_9c] = pbVar16;\n                      }\n                      else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" (if "if") (parenthesized_expression "(lVar30 == 8)" (( "(") (binary_expression "lVar30 == 8" (identifier "lVar30") (== "==") (number_literal "8")) () ")")) (compound_statement "{\n                        local_a4[(int)local_9c] = pbVar16;\n                      }" ({ "{") (expression_statement "local_a4[(int)local_9c] = pbVar16;" (assignment_expression "local_a4[(int)local_9c] = pbVar16" (subscript_expression "local_a4[(int)local_9c]" (identifier "local_a4") ([ "[") (cast_expression "(int)local_9c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_9c")) (] "]")) (= "=") (identifier "pbVar16")) (; ";")) (} "}")) (else_clause "else if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" (else "else") (if_statement "if (lVar30 == 0x1f) {\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" (if "if") (parenthesized_expression "(lVar30 == 0x1f)" (( "(") (binary_expression "lVar30 == 0x1f" (identifier "lVar30") (== "==") (number_literal "0x1f")) () ")")) (compound_statement "{\n                        if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }\n                        uVar11 = FUN_0004e690();\n                        local_a4[(int)local_9c] = uVar11;\n                      }" ({ "{") (if_statement "if (local_20[0] < 9) {\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }\n                        else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" (if "if") (parenthesized_expression "(local_20[0] < 9)" (( "(") (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                          if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }\n                        }" ({ "{") (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }\n                          else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" (if "if") (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" (( "(") (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" (identifier "pbVar16") (+ "+") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\nLAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;\n                          }" ({ "{") (labeled_statement "LAB_0005c92c:\n                            if (uVar19 - 1 < 8) goto LAB_0005c934;" (statement_identifier "LAB_0005c92c") (: ":") (if_statement "if (uVar19 - 1 < 8) goto LAB_0005c934;" (if "if") (parenthesized_expression "(uVar19 - 1 < 8)" (( "(") (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1")) (< "<") (number_literal "8")) () ")")) (goto_statement "goto LAB_0005c934;" (goto "goto") (statement_identifier "LAB_0005c934") (; ";")))) (} "}")) (else_clause "else {\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" (else "else") (compound_statement "{\nLAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }\n                          }" ({ "{") (labeled_statement "LAB_0005c920:\n                            if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" (statement_identifier "LAB_0005c920") (: ":") (if_statement "if (pbVar16 < pbVar5) {\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" (if "if") (parenthesized_expression "(pbVar16 < pbVar5)" (( "(") (binary_expression "pbVar16 < pbVar5" (identifier "pbVar16") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                              uVar19 = (int)pbVar5 - (int)pbVar16;\n                              goto LAB_0005c92c;\n                            }" ({ "{") (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" (identifier "uVar19") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16")))) (; ";")) (goto_statement "goto LAB_0005c92c;" (goto "goto") (statement_identifier "LAB_0005c92c") (; ";")) (} "}")))) (} "}")))) (} "}")) (else_clause "else {\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" (else "else") (compound_statement "{\n                          uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);\n                          error(uVar11,uVar19,8);\n                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;\n                          uVar19 = 8;\nLAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);\n                        }" ({ "{") (expression_statement "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" (identifier "uVar11") (= "=") (call_expression "dcngettext(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" (identifier "dcngettext") (argument_list "(0,\n                                              "internal error: attempt to read %d byte of data in to %d sized variable"\n                                              ,\n                                              "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                              ,local_20[0],5)" (( "(") (number_literal "0") (, ",") (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d byte of data in to %d sized variable") (" """)) (, ",") (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d bytes of data in to %d sized variable") (" """)) (, ",") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" (identifier "error") (argument_list "(uVar11,uVar19,8)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar19") (, ",") (number_literal "8") () ")"))) (; ";")) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;" (if "if") (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" (( "(") (binary_expression "pbVar5 <= pbVar16 + 8" (identifier "pbVar5") (<= "<=") (binary_expression "pbVar16 + 8" (identifier "pbVar16") (+ "+") (number_literal "8"))) () ")")) (goto_statement "goto LAB_0005c920;" (goto "goto") (statement_identifier "LAB_0005c920") (; ";"))) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" (identifier "uVar19") (= "=") (number_literal "8")) (; ";")) (labeled_statement "LAB_0005c934:\n                          (*DAT_000b9dd8)(pbVar16,uVar19);" (statement_identifier "LAB_0005c934") (: ":") (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar16,uVar19)" (( "(") (identifier "pbVar16") (, ",") (identifier "uVar19") () ")"))) (; ";"))) (} "}")))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" (identifier "uVar11") (= "=") (call_expression "FUN_0004e690()" (identifier "FUN_0004e690") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_a4[(int)local_9c] = uVar11;" (assignment_expression "local_a4[(int)local_9c] = uVar11" (subscript_expression "local_a4[(int)local_9c]" (identifier "local_a4") ([ "[") (cast_expression "(int)local_9c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_9c")) (] "]")) (= "=") (identifier "uVar11")) (; ";")) (} "}"))))) (} "}"))) (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" (identifier "FUN_000530b0") (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                   local_38 & 0xffff,0,1,param_1,0,9)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "pbVar16") (, ",") (identifier "pbVar5") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (, ",") (number_literal "0") (, ",") (binary_expression "local_38 & 0xffff" (identifier "local_38") (& "&") (number_literal "0xffff")) (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (identifier "param_1") (, ",") (number_literal "0") (, ",") (number_literal "9") () ")"))))) (; ";")) (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" (identifier "local_94") (= "=") (binary_expression "local_94 + 1" (identifier "local_94") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_ac != (undefined4 *)local_94)" (( "(") (binary_expression "local_ac != (undefined4 *)local_94" (identifier "local_ac") (!= "!=") (cast_expression "(undefined4 *)local_94" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_94"))) () ")")) (; ";")) (} "}"))) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\nLAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);\n                  warn(uVar11);\n                  local_60 = pbVar16 + 1;\n                  if (local_60 < pbVar5) goto LAB_0005ca09;\n                  goto LAB_0005ccd9;\n                }" ({ "{") (labeled_statement "LAB_0005c9e0:\n                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (statement_identifier "LAB_0005c9e0") (: ":") (expression_statement "uVar11 = dcgettext(0,"Corrupt directories list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt directories list\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Corrupt directories list\n",5)" (identifier "dcgettext") (argument_list "(0,"Corrupt directories list\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Corrupt directories list\n"" (" """) (string_content "Corrupt directories list") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" (identifier "local_60") (= "=") (binary_expression "pbVar16 + 1" (identifier "pbVar16") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (local_60 < pbVar5) goto LAB_0005ca09;" (if "if") (parenthesized_expression "(local_60 < pbVar5)" (( "(") (binary_expression "local_60 < pbVar5" (identifier "local_60") (< "<") (identifier "pbVar5")) () ")")) (goto_statement "goto LAB_0005ca09;" (goto "goto") (statement_identifier "LAB_0005ca09") (; ";"))) (goto_statement "goto LAB_0005ccd9;" (goto "goto") (statement_identifier "LAB_0005ccd9") (; ";")) (} "}"))) (expression_statement "bVar21 = 0xfffffffe < local_9c;" (assignment_expression "bVar21 = 0xfffffffe < local_9c" (identifier "bVar21") (= "=") (binary_expression "0xfffffffe < local_9c" (number_literal "0xfffffffe") (< "<") (identifier "local_9c"))) (; ";")) (expression_statement "local_9c = (byte *)((int)local_9c + 1);" (assignment_expression "local_9c = (byte *)((int)local_9c + 1)" (identifier "local_9c") (= "=") (cast_expression "(byte *)((int)local_9c + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_9c + 1)" (( "(") (binary_expression "(int)local_9c + 1" (cast_expression "(int)local_9c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_9c")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "local_98 = local_98 + (uint)bVar21;" (assignment_expression "local_98 = local_98 + (uint)bVar21" (identifier "local_98") (= "=") (binary_expression "local_98 + (uint)bVar21" (identifier "local_98") (+ "+") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar28 != CONCAT44(local_98,local_9c))" (( "(") (binary_expression "lVar28 != CONCAT44(local_98,local_9c)" (identifier "lVar28") (!= "!=") (call_expression "CONCAT44(local_98,local_9c)" (identifier "CONCAT44") (argument_list "(local_98,local_9c)" (( "(") (identifier "local_98") (, ",") (identifier "local_9c") () ")")))) () ")")) (; ";")) (} "}"))) (expression_statement "local_60 = pbVar16 + 1;" (assignment_expression "local_60 = pbVar16 + 1" (identifier "local_60") (= "=") (binary_expression "pbVar16 + 1" (identifier "pbVar16") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (local_60 < pbVar5) {\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }\n            else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" (if "if") (parenthesized_expression "(local_60 < pbVar5)" (( "(") (binary_expression "local_60 < pbVar5" (identifier "local_60") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\nLAB_0005ca09:\n              iVar14 = 1;\nLAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);\n              local_7c = local_7c & 0xff;\n              pbVar16 = local_60;\n              if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }\n            }" ({ "{") (labeled_statement "LAB_0005ca09:\n              iVar14 = 1;" (statement_identifier "LAB_0005ca09") (: ":") (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";"))) (labeled_statement "LAB_0005ca0e:\n              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" (statement_identifier "LAB_0005ca0e") (: ":") (expression_statement "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "local_7c = (*DAT_000b9dd8)(pbVar16,iVar14)" (identifier "local_7c") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar16,iVar14)" (( "(") (identifier "pbVar16") (, ",") (identifier "iVar14") () ")")))) (; ";"))) (expression_statement "local_7c = local_7c & 0xff;" (assignment_expression "local_7c = local_7c & 0xff" (identifier "local_7c") (= "=") (binary_expression "local_7c & 0xff" (identifier "local_7c") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" (identifier "pbVar16") (= "=") (identifier "local_60")) (; ";")) (if_statement "if (local_7c != 0) {\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" (if "if") (parenthesized_expression "(local_7c != 0)" (( "(") (binary_expression "local_7c != 0" (identifier "local_7c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                iVar14 = 0;\n                uVar19 = 0;\n                do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);\n              }" ({ "{") (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" (identifier "iVar14") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = 0;" (assignment_expression "uVar19 = 0" (identifier "uVar19") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                } while (iVar14 != 0 || local_7c != uVar19);" (do "do") (compound_statement "{\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);\n                  pbVar16 = pbVar16 + local_44;\n                  bVar21 = 0xfffffffe < uVar19;\n                  uVar19 = uVar19 + 1;\n                  iVar14 = iVar14 + (uint)bVar21;\n                }" ({ "{") (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,local_bc,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,local_bc,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "bVar21 = 0xfffffffe < uVar19;" (assignment_expression "bVar21 = 0xfffffffe < uVar19" (identifier "bVar21") (= "=") (binary_expression "0xfffffffe < uVar19" (number_literal "0xfffffffe") (< "<") (identifier "uVar19"))) (; ";")) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" (identifier "uVar19") (= "=") (binary_expression "uVar19 + 1" (identifier "uVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar14 = iVar14 + (uint)bVar21;" (assignment_expression "iVar14 = iVar14 + (uint)bVar21" (identifier "iVar14") (= "=") (binary_expression "iVar14 + (uint)bVar21" (identifier "iVar14") (+ "+") (cast_expression "(uint)bVar21" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar21")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar14 != 0 || local_7c != uVar19)" (( "(") (binary_expression "iVar14 != 0 || local_7c != uVar19" (binary_expression "iVar14 != 0" (identifier "iVar14") (!= "!=") (number_literal "0")) (|| "||") (binary_expression "local_7c != uVar19" (identifier "local_7c") (!= "!=") (identifier "uVar19"))) () ")")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" (else "else") (compound_statement "{\n              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;\nLAB_0005ccd9:\n              local_7c = 0;\n              pbVar16 = local_60;\n            }" ({ "{") (if_statement "if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))\n              goto LAB_0005ca0e;" (if "if") (parenthesized_expression "((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))" (( "(") (binary_expression "(pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar16 < pbVar5)" (( "(") (binary_expression "pbVar16 < pbVar5" (identifier "pbVar16") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8)" (( "(") (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16")))) (, ",") (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto LAB_0005ca0e;" (goto "goto") (statement_identifier "LAB_0005ca0e") (; ";"))) (labeled_statement "LAB_0005ccd9:\n              local_7c = 0;" (statement_identifier "LAB_0005ccd9") (: ":") (expression_statement "local_7c = 0;" (assignment_expression "local_7c = 0" (identifier "local_7c") (= "=") (number_literal "0")) (; ";"))) (expression_statement "pbVar16 = local_60;" (assignment_expression "pbVar16 = local_60" (identifier "pbVar16") (= "=") (identifier "local_60")) (; ";")) (} "}")))) (expression_statement "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);" (assignment_expression "local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "local_94") (= "=") (call_expression "FUN_0004f990(pbVar16,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,local_bc,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (pbVar5 == pbVar16) {\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\n              pcVar6 = "Corrupt file name list\n";\nLAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);\n              warn(uVar11);\n              return local_58;\n            }" ({ "{") (expression_statement "pcVar6 = "Corrupt file name list\n";" (assignment_expression "pcVar6 = "Corrupt file name list\n"" (identifier "pcVar6") (= "=") (string_literal ""Corrupt file name list\n"" (" """) (string_content "Corrupt file name list") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "LAB_0005c678:\n              uVar11 = dcgettext(0,pcVar6,5);" (statement_identifier "LAB_0005c678") (: ":") (expression_statement "uVar11 = dcgettext(0,pcVar6,5);" (assignment_expression "uVar11 = dcgettext(0,pcVar6,5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,pcVar6,5)" (identifier "dcgettext") (argument_list "(0,pcVar6,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (return_statement "return local_58;" (return "return") (identifier "local_58") (; ";")) (} "}"))) (expression_statement "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);" (assignment_expression "local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4)" (identifier "local_b8") (= "=") (cast_expression "(byte *)FUN_0006b1d0(1,local_94 << 4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b1d0(1,local_94 << 4)" (identifier "FUN_0006b1d0") (argument_list "(1,local_94 << 4)" (( "(") (number_literal "1") (, ",") (binary_expression "local_94 << 4" (identifier "local_94") (<< "<<") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (local_94 == 0) goto LAB_0005cd50;" (if "if") (parenthesized_expression "(local_94 == 0)" (( "(") (binary_expression "local_94 == 0" (identifier "local_94") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005cd50;" (goto "goto") (statement_identifier "LAB_0005cd50") (; ";"))) (expression_statement "local_ac = (undefined4 *)((int)local_b8 + 4);" (assignment_expression "local_ac = (undefined4 *)((int)local_b8 + 4)" (identifier "local_ac") (= "=") (cast_expression "(undefined4 *)((int)local_b8 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + 4)" (( "(") (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 "local_78 = 0;" (assignment_expression "local_78 = 0" (identifier "local_78") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            } while (local_78 != local_94);" (do "do") (compound_statement "{\n              if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }\n              if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }\n              local_78 = local_78 + 1;\n              local_ac = local_ac + 4;\n            }" ({ "{") (if_statement "if (local_7c != 0) {\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" (if "if") (parenthesized_expression "(local_7c != 0)" (( "(") (binary_expression "local_7c != 0" (identifier "local_7c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                local_8c = 0;\n                local_9c = local_60;\n                do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);\n              }" ({ "{") (expression_statement "local_8c = 0;" (assignment_expression "local_8c = 0" (identifier "local_8c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_9c = local_60;" (assignment_expression "local_9c = local_60" (identifier "local_9c") (= "=") (identifier "local_60")) (; ";")) (do_statement "do {\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                } while (local_7c != local_8c);" (do "do") (compound_statement "{\n                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  local_9c = local_9c + local_44;\n                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);\n                  uVar19 = local_20[0];\n                  local_9c = local_9c + local_44;\n                  if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }\n                  if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }\nLAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);\n                  local_8c = local_8c + 1;\n                }" ({ "{") (expression_statement "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" (identifier "lVar29") (= "=") (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_9c,local_bc,0,pbVar5)" (( "(") (identifier "local_9c") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" (identifier "local_9c") (= "=") (binary_expression "local_9c + local_44" (identifier "local_9c") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);" (assignment_expression "lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5)" (identifier "lVar30") (= "=") (call_expression "FUN_0004f990(local_9c,local_bc,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_9c,local_bc,0,pbVar5)" (( "(") (identifier "local_9c") (, ",") (identifier "local_bc") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "uVar19 = local_20[0];" (assignment_expression "uVar19 = local_20[0]" (identifier "uVar19") (= "=") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "local_9c = local_9c + local_44;" (assignment_expression "local_9c = local_9c + local_44" (identifier "local_9c") (= "=") (binary_expression "local_9c + local_44" (identifier "local_9c") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (pbVar5 == pbVar16) {\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\n                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                    warn(uVar11);\n                    goto LAB_0005cd30;\n                  }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Corrupt file name list\n",5)" (identifier "dcgettext") (argument_list "(0,"Corrupt file name list\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Corrupt file name list\n"" (" """) (string_content "Corrupt file name list") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (goto_statement "goto LAB_0005cd30;" (goto "goto") (statement_identifier "LAB_0005cd30") (; ";")) (} "}"))) (if_statement "if (lVar29 == 1) {\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }\n                  else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" (if "if") (parenthesized_expression "(lVar29 == 1)" (( "(") (binary_expression "lVar29 == 1" (identifier "lVar29") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                    if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }\n                  }" ({ "{") (if_statement "if (lVar30 == 8) {\n                      local_ac[-1] = pbVar16;\n                    }\n                    else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" (if "if") (parenthesized_expression "(lVar30 == 8)" (( "(") (binary_expression "lVar30 == 8" (identifier "lVar30") (== "==") (number_literal "8")) () ")")) (compound_statement "{\n                      local_ac[-1] = pbVar16;\n                    }" ({ "{") (expression_statement "local_ac[-1] = pbVar16;" (assignment_expression "local_ac[-1] = pbVar16" (subscript_expression "local_ac[-1]" (identifier "local_ac") ([ "[") (number_literal "-1") (] "]")) (= "=") (identifier "pbVar16")) (; ";")) (} "}")) (else_clause "else if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" (else "else") (if_statement "if (lVar30 == 0x1f) {\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" (if "if") (parenthesized_expression "(lVar30 == 0x1f)" (( "(") (binary_expression "lVar30 == 0x1f" (identifier "lVar30") (== "==") (number_literal "0x1f")) () ")")) (compound_statement "{\n                      if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }\n                      uVar11 = FUN_0004e690();\n                      local_ac[-1] = uVar11;\n                    }" ({ "{") (if_statement "if (local_20[0] < 9) {\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }\n                      else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" (if "if") (parenthesized_expression "(local_20[0] < 9)" (( "(") (binary_expression "local_20[0] < 9" (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                        if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }\n                      }" ({ "{") (if_statement "if (pbVar16 + local_20[0] < pbVar5) {\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }\n                        else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" (if "if") (parenthesized_expression "(pbVar16 + local_20[0] < pbVar5)" (( "(") (binary_expression "pbVar16 + local_20[0] < pbVar5" (binary_expression "pbVar16 + local_20[0]" (identifier "pbVar16") (+ "+") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\nLAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;\n                        }" ({ "{") (labeled_statement "LAB_0005cc49:\n                          if (uVar19 - 1 < 8) goto LAB_0005cc55;" (statement_identifier "LAB_0005cc49") (: ":") (if_statement "if (uVar19 - 1 < 8) goto LAB_0005cc55;" (if "if") (parenthesized_expression "(uVar19 - 1 < 8)" (( "(") (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1")) (< "<") (number_literal "8")) () ")")) (goto_statement "goto LAB_0005cc55;" (goto "goto") (statement_identifier "LAB_0005cc55") (; ";")))) (} "}")) (else_clause "else {\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" (else "else") (compound_statement "{\nLAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }\n                        }" ({ "{") (labeled_statement "LAB_0005cc3d:\n                          if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" (statement_identifier "LAB_0005cc3d") (: ":") (if_statement "if (pbVar16 < pbVar5) {\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" (if "if") (parenthesized_expression "(pbVar16 < pbVar5)" (( "(") (binary_expression "pbVar16 < pbVar5" (identifier "pbVar16") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                            uVar19 = (int)pbVar5 - (int)pbVar16;\n                            goto LAB_0005cc49;\n                          }" ({ "{") (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar16;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar16" (identifier "uVar19") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16")))) (; ";")) (goto_statement "goto LAB_0005cc49;" (goto "goto") (statement_identifier "LAB_0005cc49") (; ";")) (} "}")))) (} "}")))) (} "}")) (else_clause "else {\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" (else "else") (compound_statement "{\n                        uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);\n                        error(uVar11,uVar19,8);\n                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;\n                        uVar19 = 8;\nLAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);\n                      }" ({ "{") (expression_statement "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5);" (assignment_expression "uVar11 = dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" (identifier "uVar11") (= "=") (call_expression "dcngettext(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" (identifier "dcngettext") (argument_list "(0,\n                                            "internal error: attempt to read %d byte of data in to %d sized variable"\n                                            ,\n                                            "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                            ,local_20[0],5)" (( "(") (number_literal "0") (, ",") (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d byte of data in to %d sized variable") (" """)) (, ",") (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d bytes of data in to %d sized variable") (" """)) (, ",") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" (identifier "error") (argument_list "(uVar11,uVar19,8)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar19") (, ",") (number_literal "8") () ")"))) (; ";")) (if_statement "if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;" (if "if") (parenthesized_expression "(pbVar5 <= pbVar16 + 8)" (( "(") (binary_expression "pbVar5 <= pbVar16 + 8" (identifier "pbVar5") (<= "<=") (binary_expression "pbVar16 + 8" (identifier "pbVar16") (+ "+") (number_literal "8"))) () ")")) (goto_statement "goto LAB_0005cc3d;" (goto "goto") (statement_identifier "LAB_0005cc3d") (; ";"))) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" (identifier "uVar19") (= "=") (number_literal "8")) (; ";")) (labeled_statement "LAB_0005cc55:\n                        (*DAT_000b9dd8)(pbVar16,uVar19);" (statement_identifier "LAB_0005cc55") (: ":") (expression_statement "(*DAT_000b9dd8)(pbVar16,uVar19);" (call_expression "(*DAT_000b9dd8)(pbVar16,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar16,uVar19)" (( "(") (identifier "pbVar16") (, ",") (identifier "uVar19") () ")"))) (; ";"))) (} "}")))) (expression_statement "uVar11 = FUN_0004e690();" (assignment_expression "uVar11 = FUN_0004e690()" (identifier "uVar11") (= "=") (call_expression "FUN_0004e690()" (identifier "FUN_0004e690") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "local_ac[-1] = uVar11;" (assignment_expression "local_ac[-1] = uVar11" (subscript_expression "local_ac[-1]" (identifier "local_ac") ([ "[") (number_literal "-1") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (} "}"))))) (} "}")) (else_clause "else if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" (else "else") (if_statement "if (lVar29 == 2) {\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" (if "if") (parenthesized_expression "(lVar29 == 2)" (( "(") (binary_expression "lVar29 == 2" (identifier "lVar29") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n                    if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                  }" ({ "{") (if_statement "if (lVar30 == 0xb) {\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" (if "if") (parenthesized_expression "(lVar30 == 0xb)" (( "(") (binary_expression "lVar30 == 0xb" (identifier "lVar30") (== "==") (number_literal "0xb")) () ")")) (compound_statement "{\n                      if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" ({ "{") (if_statement "if (pbVar16 + 1 < pbVar5) {\n                        iVar14 = 1;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" (if "if") (parenthesized_expression "(pbVar16 + 1 < pbVar5)" (( "(") (binary_expression "pbVar16 + 1 < pbVar5" (binary_expression "pbVar16 + 1" (identifier "pbVar16") (+ "+") (number_literal "1")) (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                        iVar14 = 1;\n                      }" ({ "{") (expression_statement "iVar14 = 1;" (assignment_expression "iVar14 = 1" (identifier "iVar14") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" (else "else") (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" (if "if") (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" (( "(") (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" (( "(") (binary_expression "pbVar5 <= pbVar16" (identifier "pbVar5") (<= "<=") (identifier "pbVar16")) () ")")) (|| "||") (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (( "(") (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16")))) (, ",") (binary_expression "7 < iVar14 - 1U" (number_literal "7") (< "<") (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")))) () ")"))) () ")")) (compound_statement "{\nLAB_0005ce4f:\n                        *local_ac = 0;\n                        goto LAB_0005cb51;\n                      }" ({ "{") (labeled_statement "LAB_0005ce4f:\n                        *local_ac = 0;" (statement_identifier "LAB_0005ce4f") (: ":") (expression_statement "*local_ac = 0;" (assignment_expression "*local_ac = 0" (pointer_expression "*local_ac" (* "*") (identifier "local_ac")) (= "=") (number_literal "0")) (; ";"))) (goto_statement "goto LAB_0005cb51;" (goto "goto") (statement_identifier "LAB_0005cb51") (; ";")) (} "}"))))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" (identifier "uVar11") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar16,iVar14)" (( "(") (identifier "pbVar16") (, ",") (identifier "iVar14") () ")")))) (; ";")) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" (* "*") (identifier "local_ac")) (= "=") (identifier "uVar11")) (; ";")) (} "}")) (else_clause "else if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" (else "else") (if_statement "if (lVar30 == 0xf) {\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }\n                    else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" (if "if") (parenthesized_expression "(lVar30 == 0xf)" (( "(") (binary_expression "lVar30 == 0xf" (identifier "lVar30") (== "==") (number_literal "0xf")) () ")")) (compound_statement "{\n                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);\n                      *local_ac = uVar11;\n                    }" ({ "{") (expression_statement "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar16,0,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar16,0,0,pbVar5)" (( "(") (identifier "pbVar16") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" (* "*") (identifier "local_ac")) (= "=") (identifier "uVar11")) (; ";")) (} "}")) (else_clause "else if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" (else "else") (if_statement "if (lVar30 == 5) {\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" (if "if") (parenthesized_expression "(lVar30 == 5)" (( "(") (binary_expression "lVar30 == 5" (identifier "lVar30") (== "==") (number_literal "5")) () ")")) (compound_statement "{\n                      if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;\n                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);\n                      *local_ac = uVar11;\n                    }" ({ "{") (if_statement "if (pbVar16 + 2 < pbVar5) {\n                        iVar14 = 2;\n                      }\n                      else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" (if "if") (parenthesized_expression "(pbVar16 + 2 < pbVar5)" (( "(") (binary_expression "pbVar16 + 2 < pbVar5" (binary_expression "pbVar16 + 2" (identifier "pbVar16") (+ "+") (number_literal "2")) (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                        iVar14 = 2;\n                      }" ({ "{") (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" (identifier "iVar14") (= "=") (number_literal "2")) (; ";")) (} "}")) (else_clause "else if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" (else "else") (if_statement "if ((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))\n                      goto LAB_0005ce4f;" (if "if") (parenthesized_expression "((pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))" (( "(") (binary_expression "(pbVar5 <= pbVar16) ||\n                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (parenthesized_expression "(pbVar5 <= pbVar16)" (( "(") (binary_expression "pbVar5 <= pbVar16" (identifier "pbVar5") (<= "<=") (identifier "pbVar16")) () ")")) (|| "||") (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)" (( "(") (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar16" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar16" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar16" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar16")))) (, ",") (binary_expression "7 < iVar14 - 1U" (number_literal "7") (< "<") (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")))) () ")"))) () ")")) (goto_statement "goto LAB_0005ce4f;" (goto "goto") (statement_identifier "LAB_0005ce4f") (; ";"))))) (expression_statement "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);" (assignment_expression "uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14)" (identifier "uVar11") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar16,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar16,iVar14)" (( "(") (identifier "pbVar16") (, ",") (identifier "iVar14") () ")")))) (; ";")) (expression_statement "*local_ac = uVar11;" (assignment_expression "*local_ac = uVar11" (pointer_expression "*local_ac" (* "*") (identifier "local_ac")) (= "=") (identifier "uVar11")) (; ";")) (} "}"))))))) (} "}"))))) (labeled_statement "LAB_0005cb51:\n                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" (statement_identifier "LAB_0005cb51") (: ":") (expression_statement "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9);" (assignment_expression "pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" (identifier "pbVar16") (= "=") (cast_expression "(byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" (identifier "FUN_000530b0") (argument_list "(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,\n                                                 local_38 & 0xffff,0,1,param_1,0,9)" (( "(") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "pbVar16") (, ",") (identifier "pbVar5") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]")) (, ",") (number_literal "0") (, ",") (binary_expression "local_38 & 0xffff" (identifier "local_38") (& "&") (number_literal "0xffff")) (, ",") (number_literal "0") (, ",") (number_literal "1") (, ",") (identifier "param_1") (, ",") (number_literal "0") (, ",") (number_literal "9") () ")"))))) (; ";"))) (expression_statement "local_8c = local_8c + 1;" (assignment_expression "local_8c = local_8c + 1" (identifier "local_8c") (= "=") (binary_expression "local_8c + 1" (identifier "local_8c") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_7c != local_8c)" (( "(") (binary_expression "local_7c != local_8c" (identifier "local_7c") (!= "!=") (identifier "local_8c")) () ")")) (; ";")) (} "}"))) (if_statement "if (pbVar5 == pbVar16) {\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" (if "if") (parenthesized_expression "(pbVar5 == pbVar16)" (( "(") (binary_expression "pbVar5 == pbVar16" (identifier "pbVar5") (== "==") (identifier "pbVar16")) () ")")) (compound_statement "{\nLAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);\n                warn(uVar11);\n                goto LAB_0005cd50;\n              }" ({ "{") (labeled_statement "LAB_0005cd30:\n                uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (statement_identifier "LAB_0005cd30") (: ":") (expression_statement "uVar11 = dcgettext(0,"Corrupt file name list\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Corrupt file name list\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Corrupt file name list\n",5)" (identifier "dcgettext") (argument_list "(0,"Corrupt file name list\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Corrupt file name list\n"" (" """) (string_content "Corrupt file name list") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (goto_statement "goto LAB_0005cd50;" (goto "goto") (statement_identifier "LAB_0005cd50") (; ";")) (} "}"))) (expression_statement "local_78 = local_78 + 1;" (assignment_expression "local_78 = local_78 + 1" (identifier "local_78") (= "=") (binary_expression "local_78 + 1" (identifier "local_78") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_ac = local_ac + 4;" (assignment_expression "local_ac = local_ac + 4" (identifier "local_ac") (= "=") (binary_expression "local_ac + 4" (identifier "local_ac") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(local_78 != local_94)" (( "(") (binary_expression "local_78 != local_94" (identifier "local_78") (!= "!=") (identifier "local_94")) () ")")) (; ";")) (expression_statement "uVar19 = *(uint *)((int)local_b8 + 4);" (assignment_expression "uVar19 = *(uint *)((int)local_b8 + 4)" (identifier "uVar19") (= "=") (pointer_expression "*(uint *)((int)local_b8 + 4)" (* "*") (cast_expression "(uint *)((int)local_b8 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + 4)" (( "(") (binary_expression "(int)local_b8 + 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (uVar19 != 0) goto LAB_0005cdc0;" (if "if") (parenthesized_expression "(uVar19 != 0)" (( "(") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005cdc0;" (goto "goto") (statement_identifier "LAB_0005cdc0") (; ";"))) (labeled_statement "LAB_0005cd5b:\n            uVar11 = *(undefined4 *)local_b8;" (statement_identifier "LAB_0005cd5b") (: ":") (expression_statement "uVar11 = *(undefined4 *)local_b8;" (assignment_expression "uVar11 = *(undefined4 *)local_b8" (identifier "uVar11") (= "=") (pointer_expression "*(undefined4 *)local_b8" (* "*") (cast_expression "(undefined4 *)local_b8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_b8")))) (; ";"))) (expression_statement "pcVar6 = ".";" (assignment_expression "pcVar6 = "."" (identifier "pcVar6") (= "=") (string_literal ""."" (" """) (string_content ".") (" """))) (; ";")) (labeled_statement "LAB_0005cd63:\n            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" (statement_identifier "LAB_0005cd63") (: ":") (expression_statement "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5)" (identifier "pcVar9") (= "=") (cast_expression "(char *)dcgettext(0,"CU: %s/%s:\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"CU: %s/%s:\n",5)" (identifier "dcgettext") (argument_list "(0,"CU: %s/%s:\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""CU: %s/%s:\n"" (" """) (string_content "CU: %s/%s:") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";"))) (expression_statement "printf(pcVar9,pcVar6,uVar11);" (call_expression "printf(pcVar9,pcVar6,uVar11)" (identifier "printf") (argument_list "(pcVar9,pcVar6,uVar11)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar6") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}")))) (expression_statement "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" (identifier "dcgettext") (argument_list "(0,\n                                     "File name                            Line number    Starting address    View\n"\n                                     ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""File name                            Line number    Starting address    View\n"" (" """) (string_content "File name                            Line number    Starting address    View") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6);" (call_expression "printf(pcVar6)" (identifier "printf") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "DAT_000b75e0 = local_40;" (assignment_expression "DAT_000b75e0 = local_40" (identifier "DAT_000b75e0") (= "=") (identifier "local_40")) (; ";")) (expression_statement "DAT_000b75e4 = local_3c;" (assignment_expression "DAT_000b75e4 = local_3c" (identifier "DAT_000b75e4") (= "=") (identifier "local_3c")) (; ";")) (expression_statement "DAT_000b75e8 = local_38;" (assignment_expression "DAT_000b75e8 = local_38" (identifier "DAT_000b75e8") (= "=") (identifier "local_38")) (; ";")) (expression_statement "DAT_000b75ec = local_34;" (assignment_expression "DAT_000b75ec = local_34" (identifier "DAT_000b75ec") (= "=") (identifier "local_34")) (; ";")) (expression_statement "DAT_000b75f0 = local_30;" (assignment_expression "DAT_000b75f0 = local_30" (identifier "DAT_000b75f0") (= "=") (identifier "local_30")) (; ";")) (expression_statement "DAT_000b75f4 = local_2c;" (assignment_expression "DAT_000b75f4 = local_2c" (identifier "DAT_000b75f4") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "DAT_000b75f8 = local_28;" (assignment_expression "DAT_000b75f8 = local_28" (identifier "DAT_000b75f8") (= "=") (identifier "local_28")) (; ";")) (expression_statement "DAT_000b75fc = local_24;" (assignment_expression "DAT_000b75fc = local_24" (identifier "DAT_000b75fc") (= "=") (identifier "local_24")) (; ";")) (expression_statement "DAT_000b7600 = local_20[0];" (assignment_expression "DAT_000b7600 = local_20[0]" (identifier "DAT_000b7600") (= "=") (subscript_expression "local_20[0]" (identifier "local_20") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "local_bc = pbVar16;" (assignment_expression "local_bc = pbVar16" (identifier "local_bc") (= "=") (identifier "pbVar16")) (; ";")) (expression_statement "local_9c = PTR_stdout_000b3fd8;" (assignment_expression "local_9c = PTR_stdout_000b3fd8" (identifier "local_9c") (= "=") (identifier "PTR_stdout_000b3fd8")) (; ";")) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" (identifier "lVar30") (= "=") (identifier "lVar29")) (; ";")) (if_statement "if (pbVar16 < local_48) {\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" (if "if") (parenthesized_expression "(pbVar16 < local_48)" (( "(") (binary_expression "pbVar16 < local_48" (identifier "pbVar16") (< "<") (identifier "local_48")) () ")")) (compound_statement "{\nLAB_0005ad11:\n            lVar29 = lVar30;\n            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);\n            local_b4 = (byte *)lVar28;\n            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n            DAT_000b9d00 = (uint)lVar29;\n            pbVar20 = local_bc + 1;\n            bVar13 = *local_bc;\n            local_ac = (undefined4 *)(uint)bVar13;\n            if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }\n            switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }\n            lVar30 = lVar29;\n            if (local_48 <= local_bc) goto LAB_0005adb0;\n            goto LAB_0005ad11;\n          }" ({ "{") (labeled_statement "LAB_0005ad11:\n            lVar29 = lVar30;" (statement_identifier "LAB_0005ad11") (: ":") (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" (identifier "lVar29") (= "=") (identifier "lVar30")) (; ";"))) (expression_statement "local_b0 = (uint)((ulonglong)lVar28 >> 0x20);" (assignment_expression "local_b0 = (uint)((ulonglong)lVar28 >> 0x20)" (identifier "local_b0") (= "=") (call_expression "(uint)((ulonglong)lVar28 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)lVar28 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar28 >> 0x20" (cast_expression "(ulonglong)lVar28" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar28")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "local_b4 = (byte *)lVar28;" (assignment_expression "local_b4 = (byte *)lVar28" (identifier "local_b4") (= "=") (cast_expression "(byte *)lVar28" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "lVar28"))) (; ";")) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "pbVar20 = local_bc + 1;" (assignment_expression "pbVar20 = local_bc + 1" (identifier "pbVar20") (= "=") (binary_expression "local_bc + 1" (identifier "local_bc") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar13 = *local_bc;" (assignment_expression "bVar13 = *local_bc" (identifier "bVar13") (= "=") (pointer_expression "*local_bc" (* "*") (identifier "local_bc"))) (; ";")) (expression_statement "local_ac = (undefined4 *)(uint)bVar13;" (assignment_expression "local_ac = (undefined4 *)(uint)bVar13" (identifier "local_ac") (= "=") (cast_expression "(undefined4 *)(uint)bVar13" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (cast_expression "(uint)bVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar13")))) (; ";")) (if_statement "if (local_24._1_1_ <= bVar13) {\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" (if "if") (parenthesized_expression "(local_24._1_1_ <= bVar13)" (( "(") (binary_expression "local_24._1_1_ <= bVar13" (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")) (<= "<=") (identifier "bVar13")) () ")")) (compound_statement "{\n              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;\n              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);\n              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }\n              uVar19 = uVar19 * (local_2c & 0xff);\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }\n              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;\n              local_bc = pbVar20;\n              goto joined_r0x0005af93;\n            }" ({ "{") (expression_statement "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;" (assignment_expression "uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" (identifier "uVar4") (= "=") (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_ & 0xff" (binary_expression "(ushort)bVar13 - (ushort)local_24._1_1_" (cast_expression "(ushort)bVar13" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (identifier "bVar13")) (- "-") (cast_expression "(ushort)local_24._1_1_" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")))) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);" (assignment_expression "bVar13 = (byte)(uVar4 % (ushort)(byte)local_24)" (identifier "bVar13") (= "=") (call_expression "(byte)(uVar4 % (ushort)(byte)local_24)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(uVar4 % (ushort)(byte)local_24)" (( "(") (binary_expression "uVar4 % (ushort)(byte)local_24" (identifier "uVar4") (% "%") (cast_expression "(ushort)(byte)local_24" (( "(") (type_descriptor "ushort" (type_identifier "ushort")) () ")") (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24")))) () ")")))) (; ";")) (expression_statement "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;" (assignment_expression "uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" (identifier "uVar19") (= "=") (binary_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff" (call_expression "CONCAT11(bVar13,(char)(uVar4 / (byte)local_24))" (identifier "CONCAT11") (argument_list "(bVar13,(char)(uVar4 / (byte)local_24))" (( "(") (identifier "bVar13") (, ",") (cast_expression "(char)(uVar4 / (byte)local_24)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(uVar4 / (byte)local_24)" (( "(") (binary_expression "uVar4 / (byte)local_24" (identifier "uVar4") (/ "/") (cast_expression "(byte)local_24" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "local_24"))) () ")"))) () ")"))) (& "&") (number_literal "0xff"))) (; ";")) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" (if "if") (parenthesized_expression "(local_2c._1_1_ != 1)" (( "(") (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n                uVar7 = (byte)DAT_000b9d20 + uVar19;\n                uVar19 = uVar7 / local_2c._1_1_;\n                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);\n                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);\n              }" ({ "{") (expression_statement "uVar7 = (byte)DAT_000b9d20 + uVar19;" (assignment_expression "uVar7 = (byte)DAT_000b9d20 + uVar19" (identifier "uVar7") (= "=") (binary_expression "(byte)DAT_000b9d20 + uVar19" (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20")) (+ "+") (identifier "uVar19"))) (; ";")) (expression_statement "uVar19 = uVar7 / local_2c._1_1_;" (assignment_expression "uVar19 = uVar7 / local_2c._1_1_" (identifier "uVar19") (= "=") (binary_expression "uVar7 / local_2c._1_1_" (identifier "uVar7") (/ "/") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")))) (; ";")) (expression_statement "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);" (assignment_expression "local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_)" (identifier "local_88") (= "=") (call_expression "(undefined1)(uVar7 % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" (( "(") (identifier "undefined1") () ")")) (argument_list "(uVar7 % (uint)local_2c._1_1_)" (( "(") (binary_expression "uVar7 % (uint)local_2c._1_1_" (identifier "uVar7") (% "%") (cast_expression "(uint)local_2c._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")))) () ")")))) (; ";")) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88)" (identifier "DAT_000b9d20") (= "=") (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_88)" (identifier "CONCAT11") (argument_list "(DAT_000b9d20._1_1_,local_88)" (( "(") (field_expression "DAT_000b9d20._1_1_" (identifier "DAT_000b9d20") (. ".") (field_identifier "_1_1_")) (, ",") (identifier "local_88") () ")")))) (; ";")) (} "}"))) (expression_statement "uVar19 = uVar19 * (local_2c & 0xff);" (assignment_expression "uVar19 = uVar19 * (local_2c & 0xff)" (identifier "uVar19") (= "=") (binary_expression "uVar19 * (local_2c & 0xff)" (identifier "uVar19") (* "*") (parenthesized_expression "(local_2c & 0xff)" (( "(") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" (identifier "lVar29") (= "=") (binary_expression "lVar29 + (ulonglong)uVar19" (identifier "lVar29") (+ "+") (cast_expression "(ulonglong)uVar19" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar19")))) (; ";")) (if_statement "if (uVar19 != 0) {\n                DAT_000b9d08 = 0;\n              }" (if "if") (parenthesized_expression "(uVar19 != 0)" (( "(") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                DAT_000b9d08 = 0;\n              }" ({ "{") (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28" (identifier "DAT_000b9d10") (= "=") (binary_expression "DAT_000b9d10 + (uint)bVar13 + local_28" (binary_expression "DAT_000b9d10 + (uint)bVar13" (identifier "DAT_000b9d10") (+ "+") (cast_expression "(uint)bVar13" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar13"))) (+ "+") (identifier "local_28"))) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (goto_statement "goto joined_r0x0005af93;" (goto "goto") (statement_identifier "joined_r0x0005af93") (; ";")) (} "}"))) (switch_statement "switch(local_ac) {\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" (switch "switch") (parenthesized_expression "(local_ac)" (( "(") (identifier "local_ac") () ")")) (compound_statement "{\n            case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;\n            case (undefined4 *)0x1:\n            case (undefined4 *)0xa:\n            case (undefined4 *)0xb:\n              goto code_r0x0005af82;\n            case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;\n            case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;\n            case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;\n            case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;\n            case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;\n            case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;\n            case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;\n            default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n            }" ({ "{") (case_statement "case (undefined4 *)0x0:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);\n              if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }\n              pbVar16 = pbVar20 + local_44;\n              local_bc = pbVar20 + local_44 + iVar14;\n              pbVar20 = pbVar16 + 1;\n              uVar19 = (uint)*pbVar16;\n              switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              break;" (case "case") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (: ":") (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,local_48)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,local_48)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "local_48") () ")")))) (; ";")) (if_statement "if (iVar14 == 0) {\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" (if "if") (parenthesized_expression "(iVar14 == 0)" (( "(") (binary_expression "iVar14 == 0" (identifier "iVar14") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);\n                warn(uVar11);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                local_bc = pbVar20;\n                break;\n              }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);" (assignment_expression "uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"Badly formed extended line op encountered!\n",5)" (identifier "dcgettext") (argument_list "(0,"Badly formed extended line op encountered!\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Badly formed extended line op encountered!\n"" (" """) (string_content "Badly formed extended line op encountered!") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11);" (call_expression "warn(uVar11)" (identifier "warn") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "pbVar16 = pbVar20 + local_44;" (assignment_expression "pbVar16 = pbVar20 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44 + iVar14;" (assignment_expression "local_bc = pbVar20 + local_44 + iVar14" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44 + iVar14" (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44")) (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "pbVar20 = pbVar16 + 1;" (assignment_expression "pbVar20 = pbVar16 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar16 + 1" (identifier "pbVar16") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar19 = (uint)*pbVar16;" (assignment_expression "uVar19 = (uint)*pbVar16" (identifier "uVar19") (= "=") (binary_expression "(uint)*pbVar16" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar16"))) (; ";")) (switch_statement "switch(uVar19) {\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" (switch "switch") (parenthesized_expression "(uVar19)" (( "(") (identifier "uVar19") () ")")) (compound_statement "{\n              default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);\n              case 1:\n              case 4:\n              case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;\n              case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;\n              case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" ({ "{") (case_statement "default:\n                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);\n                printf(pcVar6,uVar19,iVar14);" (default "default") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"UNKNOWN (%u): length %d\n",5)" (identifier "dcgettext") (argument_list "(0,"UNKNOWN (%u): length %d\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""UNKNOWN (%u): length %d\n"" (" """) (string_content "UNKNOWN (%u): length %d") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar19,iVar14);" (call_expression "printf(pcVar6,uVar19,iVar14)" (identifier "printf") (argument_list "(pcVar6,uVar19,iVar14)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar19") (, ",") (identifier "iVar14") () ")"))) (; ";"))) (case_statement "case 1:" (case "case") (number_literal "1") (: ":")) (case_statement "case 4:" (case "case") (number_literal "4") (: ":")) (case_statement "case 0x16:\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                if (uVar19 != 1) break;\n                local_ac = (undefined4 *)0xffffffff;\n                goto joined_r0x0005af93;" (case "case") (number_literal "0x16") (: ":") (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (if_statement "if (uVar19 != 1) break;" (if "if") (parenthesized_expression "(uVar19 != 1)" (( "(") (binary_expression "uVar19 != 1" (identifier "uVar19") (!= "!=") (number_literal "1")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "local_ac = (undefined4 *)0xffffffff;" (assignment_expression "local_ac = (undefined4 *)0xffffffff" (identifier "local_ac") (= "=") (cast_expression "(undefined4 *)0xffffffff" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";")) (goto_statement "goto joined_r0x0005af93;" (goto "goto") (statement_identifier "joined_r0x0005af93") (; ";"))) (case_statement "case 2:\n                uVar19 = iVar14 - 1;\n                if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }\n                DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n                DAT_000b9d08 = 0;\n                break;" (case "case") (number_literal "2") (: ":") (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" (identifier "uVar19") (= "=") (binary_expression "iVar14 - 1" (identifier "iVar14") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (uVar19 < 9) {\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }\n                else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" (if "if") (parenthesized_expression "(uVar19 < 9)" (( "(") (binary_expression "uVar19 < 9" (identifier "uVar19") (< "<") (number_literal "9")) () ")")) (compound_statement "{\n                  if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }\n                  lVar29 = 0;\n                }" ({ "{") (if_statement "if (local_bc < pbVar5) {\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }\n                  else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" (if "if") (parenthesized_expression "(local_bc < pbVar5)" (( "(") (binary_expression "local_bc < pbVar5" (identifier "local_bc") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\ncode_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;\n                  }" ({ "{") (labeled_statement "code_r0x0005b20c:\n                    if (uVar19 - 1 < 8) goto code_r0x0005b218;" (statement_identifier "code_r0x0005b20c") (: ":") (if_statement "if (uVar19 - 1 < 8) goto code_r0x0005b218;" (if "if") (parenthesized_expression "(uVar19 - 1 < 8)" (( "(") (binary_expression "uVar19 - 1 < 8" (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1")) (< "<") (number_literal "8")) () ")")) (goto_statement "goto code_r0x0005b218;" (goto "goto") (statement_identifier "code_r0x0005b218") (; ";")))) (} "}")) (else_clause "else {\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" (else "else") (compound_statement "{\ncode_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }\n                  }" ({ "{") (labeled_statement "code_r0x0005b1f6:\n                    if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" (statement_identifier "code_r0x0005b1f6") (: ":") (if_statement "if (pbVar20 < pbVar5) {\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" (if "if") (parenthesized_expression "(pbVar20 < pbVar5)" (( "(") (binary_expression "pbVar20 < pbVar5" (identifier "pbVar20") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                      uVar19 = (int)pbVar5 - (int)pbVar20;\n                      goto code_r0x0005b20c;\n                    }" ({ "{") (expression_statement "uVar19 = (int)pbVar5 - (int)pbVar20;" (assignment_expression "uVar19 = (int)pbVar5 - (int)pbVar20" (identifier "uVar19") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")))) (; ";")) (goto_statement "goto code_r0x0005b20c;" (goto "goto") (statement_identifier "code_r0x0005b20c") (; ";")) (} "}")))) (} "}")))) (expression_statement "lVar29 = 0;" (assignment_expression "lVar29 = 0" (identifier "lVar29") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" (else "else") (compound_statement "{\n                  uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);\n                  error(uVar11,uVar19,8);\n                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;\n                  uVar19 = 8;\ncode_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);\n                }" ({ "{") (expression_statement "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5);" (assignment_expression "uVar11 = dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" (identifier "uVar11") (= "=") (call_expression "dcngettext(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" (identifier "dcngettext") (argument_list "(0,\n                                      "internal error: attempt to read %d byte of data in to %d sized variable"\n                                      ,\n                                      "internal error: attempt to read %d bytes of data in to %d sized variable"\n                                      ,uVar19,5)" (( "(") (number_literal "0") (, ",") (string_literal ""internal error: attempt to read %d byte of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d byte of data in to %d sized variable") (" """)) (, ",") (string_literal ""internal error: attempt to read %d bytes of data in to %d sized variable"" (" """) (string_content "internal error: attempt to read %d bytes of data in to %d sized variable") (" """)) (, ",") (identifier "uVar19") (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "error(uVar11,uVar19,8);" (call_expression "error(uVar11,uVar19,8)" (identifier "error") (argument_list "(uVar11,uVar19,8)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar19") (, ",") (number_literal "8") () ")"))) (; ";")) (if_statement "if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;" (if "if") (parenthesized_expression "(pbVar5 <= pbVar16 + 9)" (( "(") (binary_expression "pbVar5 <= pbVar16 + 9" (identifier "pbVar5") (<= "<=") (binary_expression "pbVar16 + 9" (identifier "pbVar16") (+ "+") (number_literal "9"))) () ")")) (goto_statement "goto code_r0x0005b1f6;" (goto "goto") (statement_identifier "code_r0x0005b1f6") (; ";"))) (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" (identifier "uVar19") (= "=") (number_literal "8")) (; ";")) (labeled_statement "code_r0x0005b218:\n                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" (statement_identifier "code_r0x0005b218") (: ":") (expression_statement "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);" (assignment_expression "lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19)" (identifier "lVar29") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar20,uVar19)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar20,uVar19)" (( "(") (identifier "pbVar20") (, ",") (identifier "uVar19") () ")")))) (; ";"))) (} "}")))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (= "=") (binary_expression "DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (& "&") (number_literal "0xff00"))) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 3:\n                local_94 = local_94 + 1;\n                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);\n                DAT_000b9d24 = DAT_000b9d24 + 1;\n                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);\n                *puVar17 = pbVar20;\n                sVar8 = strlen((char *)pbVar20);\n                pbVar16 = pbVar16 + sVar8 + 2;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[1] = uVar11;\n                pbVar16 = pbVar16 + local_44;\n                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);\n                puVar17[2] = uVar11;\n                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);\n                puVar17[3] = uVar11;\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (case "case") (number_literal "3") (: ":") (expression_statement "local_94 = local_94 + 1;" (assignment_expression "local_94 = local_94 + 1" (identifier "local_94") (= "=") (binary_expression "local_94 + 1" (identifier "local_94") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);" (assignment_expression "local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10)" (identifier "local_b8") (= "=") (cast_expression "(byte *)FUN_0006b220(local_b8,local_94 * 0x10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b220(local_b8,local_94 * 0x10)" (identifier "FUN_0006b220") (argument_list "(local_b8,local_94 * 0x10)" (( "(") (identifier "local_b8") (, ",") (binary_expression "local_94 * 0x10" (identifier "local_94") (* "*") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "DAT_000b9d24 = DAT_000b9d24 + 1;" (assignment_expression "DAT_000b9d24 = DAT_000b9d24 + 1" (identifier "DAT_000b9d24") (= "=") (binary_expression "DAT_000b9d24 + 1" (identifier "DAT_000b9d24") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + (local_94 * 4 + -4) * 4)" (( "(") (binary_expression "(int)local_b8 + (local_94 * 4 + -4) * 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (binary_expression "(local_94 * 4 + -4) * 4" (parenthesized_expression "(local_94 * 4 + -4)" (( "(") (binary_expression "local_94 * 4 + -4" (binary_expression "local_94 * 4" (identifier "local_94") (* "*") (number_literal "4")) (+ "+") (number_literal "-4")) () ")")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "*puVar17 = pbVar20;" (assignment_expression "*puVar17 = pbVar20" (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) (= "=") (identifier "pbVar20")) (; ";")) (expression_statement "sVar8 = strlen((char *)pbVar20);" (assignment_expression "sVar8 = strlen((char *)pbVar20)" (identifier "sVar8") (= "=") (call_expression "strlen((char *)pbVar20)" (identifier "strlen") (argument_list "((char *)pbVar20)" (( "(") (cast_expression "(char *)pbVar20" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar20")) () ")")))) (; ";")) (expression_statement "pbVar16 = pbVar16 + sVar8 + 2;" (assignment_expression "pbVar16 = pbVar16 + sVar8 + 2" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + sVar8 + 2" (binary_expression "pbVar16 + sVar8" (identifier "pbVar16") (+ "+") (identifier "sVar8")) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" (identifier "FUN_0004f990") (argument_list "(pbVar16,&local_44,0,local_48)" (( "(") (identifier "pbVar16") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "local_48") () ")")))) (; ";")) (expression_statement "puVar17[1] = uVar11;" (assignment_expression "puVar17[1] = uVar11" (subscript_expression "puVar17[1]" (identifier "puVar17") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "pbVar16 = pbVar16 + local_44;" (assignment_expression "pbVar16 = pbVar16 + local_44" (identifier "pbVar16") (= "=") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar16,&local_44,0,local_48)" (identifier "FUN_0004f990") (argument_list "(pbVar16,&local_44,0,local_48)" (( "(") (identifier "pbVar16") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "local_48") () ")")))) (; ";")) (expression_statement "puVar17[2] = uVar11;" (assignment_expression "puVar17[2] = uVar11" (subscript_expression "puVar17[2]" (identifier "puVar17") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);" (assignment_expression "uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" (identifier "uVar11") (= "=") (call_expression "FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48)" (identifier "FUN_0004f990") (argument_list "(pbVar16 + local_44,&local_44,0,local_48)" (( "(") (binary_expression "pbVar16 + local_44" (identifier "pbVar16") (+ "+") (identifier "local_44")) (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "local_48") () ")")))) (; ";")) (expression_statement "puVar17[3] = uVar11;" (assignment_expression "puVar17[3] = uVar11" (subscript_expression "puVar17[3]" (identifier "puVar17") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "uVar11")) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";"))) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x1:" (case "case") (cast_expression "(undefined4 *)0x1" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1")) (: ":")) (case_statement "case (undefined4 *)0xa:" (case "case") (cast_expression "(undefined4 *)0xa" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xa")) (: ":")) (case_statement "case (undefined4 *)0xb:\n              goto code_r0x0005af82;" (case "case") (cast_expression "(undefined4 *)0xb" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xb")) (: ":") (goto_statement "goto code_r0x0005af82;" (goto "goto") (statement_identifier "code_r0x0005af82") (; ";"))) (case_statement "case (undefined4 *)0x2:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }\n              uVar19 = local_2c & 0xff;\ncode_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);\n              lVar30 = lVar29;\n              if (iVar14 * uVar19 == 0) break;\ncode_r0x0005ae7e:\n              lVar29 = lVar30;\n              DAT_000b9d08 = 0;\n              break;" (case "case") (cast_expression "(undefined4 *)0x2" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2")) (: ":") (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (if_statement "if (local_2c._1_1_ != 1) {\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" (if "if") (parenthesized_expression "(local_2c._1_1_ != 1)" (( "(") (binary_expression "local_2c._1_1_ != 1" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;\n                local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);\n                uVar19 = local_2c & 0xff;\n                goto code_r0x0005ae5c;\n              }" ({ "{") (expression_statement "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" (identifier "uVar7") (= "=") (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" (( "(") (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" (identifier "iVar14") (+ "+") (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20")))) () ")")) (/ "/") (cast_expression "(uint)local_2c._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_"))))) (; ";")) (expression_statement "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" (identifier "local_ac") (. ".") (field_identifier "_0_1_")) (= "=") (call_expression "(undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" (( "(") (identifier "undefined1") () ")")) (argument_list "((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_)" (( "(") (binary_expression "(iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_" (parenthesized_expression "(iVar14 + (uint)(byte)DAT_000b9d20)" (( "(") (binary_expression "iVar14 + (uint)(byte)DAT_000b9d20" (identifier "iVar14") (+ "+") (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20")))) () ")")) (% "%") (cast_expression "(uint)local_2c._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")))) () ")")))) (; ";")) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff"))) (; ";")) (goto_statement "goto code_r0x0005ae5c;" (goto "goto") (statement_identifier "code_r0x0005ae5c") (; ";")) (} "}"))) (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff"))) (; ";")) (labeled_statement "code_r0x0005c370:\n              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" (statement_identifier "code_r0x0005c370") (: ":") (expression_statement "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);" (assignment_expression "lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19)" (identifier "lVar29") (= "=") (binary_expression "lVar29 + (ulonglong)(iVar14 * uVar19)" (identifier "lVar29") (+ "+") (call_expression "(ulonglong)(iVar14 * uVar19)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(iVar14 * uVar19)" (( "(") (binary_expression "iVar14 * uVar19" (identifier "iVar14") (* "*") (identifier "uVar19")) () ")"))))) (; ";"))) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" (identifier "lVar30") (= "=") (identifier "lVar29")) (; ";")) (if_statement "if (iVar14 * uVar19 == 0) break;" (if "if") (parenthesized_expression "(iVar14 * uVar19 == 0)" (( "(") (binary_expression "iVar14 * uVar19 == 0" (binary_expression "iVar14 * uVar19" (identifier "iVar14") (* "*") (identifier "uVar19")) (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "code_r0x0005ae7e:\n              lVar29 = lVar30;" (statement_identifier "code_r0x0005ae7e") (: ":") (expression_statement "lVar29 = lVar30;" (assignment_expression "lVar29 = lVar30" (identifier "lVar29") (= "=") (identifier "lVar30")) (; ";"))) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x3:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              DAT_000b9d10 = DAT_000b9d10 + iVar14;\n              local_bc = pbVar20 + local_44;\n              break;" (case "case") (cast_expression "(undefined4 *)0x3" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x3")) (: ":") (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,1,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,1,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "1") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "DAT_000b9d10 = DAT_000b9d10 + iVar14;" (assignment_expression "DAT_000b9d10 = DAT_000b9d10 + iVar14" (identifier "DAT_000b9d10") (= "=") (binary_expression "DAT_000b9d10 + iVar14" (identifier "DAT_000b9d10") (+ "+") (identifier "iVar14"))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x4:\n              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              uVar19 = iVar14 - 1;\n              DAT_000b9d0c = iVar14;\n              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }\n              goto code_r0x0005b184;" (case "case") (cast_expression "(undefined4 *)0x4" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x4")) (: ":") (expression_statement "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "iVar14") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "uVar19 = iVar14 - 1;" (assignment_expression "uVar19 = iVar14 - 1" (identifier "uVar19") (= "=") (binary_expression "iVar14 - 1" (identifier "iVar14") (- "-") (number_literal "1"))) (; ";")) (expression_statement "DAT_000b9d0c = iVar14;" (assignment_expression "DAT_000b9d0c = iVar14" (identifier "DAT_000b9d0c") (= "=") (identifier "iVar14")) (; ";")) (if_statement "if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }\n              else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" (if "if") (parenthesized_expression "((local_b8 == (byte *)0x0) || (local_94 == 0))" (( "(") (binary_expression "(local_b8 == (byte *)0x0) || (local_94 == 0)" (parenthesized_expression "(local_b8 == (byte *)0x0)" (( "(") (binary_expression "local_b8 == (byte *)0x0" (identifier "local_b8") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(local_94 == 0)" (( "(") (binary_expression "local_94 == 0" (identifier "local_94") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                pcVar6 = "\n [Use file table entry %d]\n";\n              }" ({ "{") (expression_statement "pcVar6 = "\n [Use file table entry %d]\n";" (assignment_expression "pcVar6 = "\n [Use file table entry %d]\n"" (identifier "pcVar6") (= "=") (string_literal ""\n [Use file table entry %d]\n"" (" """) (escape_sequence "\n") (string_content " [Use file table entry %d]") (escape_sequence "\n") (" """))) (; ";")) (} "}")) (else_clause "else {\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" (else "else") (compound_statement "{\n                if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }\n                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);\n                warn(uVar11,iVar14,local_94);\n                pcVar6 = "\n <over large file table index %u>";\n              }" ({ "{") (if_statement "if (uVar19 < local_94) {\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" (if "if") (parenthesized_expression "(uVar19 < local_94)" (( "(") (binary_expression "uVar19 < local_94" (identifier "uVar19") (< "<") (identifier "local_94")) () ")")) (compound_statement "{\n                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);\n                  uVar19 = puVar17[1];\n                  if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  break;\n                }" ({ "{") (expression_statement "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" (identifier "puVar17") (= "=") (cast_expression "(undefined4 *)((int)local_b8 + uVar19 * 4 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" (( "(") (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "uVar19 = puVar17[1];" (assignment_expression "uVar19 = puVar17[1]" (identifier "uVar19") (= "=") (subscript_expression "puVar17[1]" (identifier "puVar17") ([ "[") (number_literal "1") (] "]"))) (; ";")) (if_statement "if (uVar19 == 0) {\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" (if "if") (parenthesized_expression "(uVar19 == 0)" (( "(") (binary_expression "uVar19 == 0" (identifier "uVar19") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    printf("\n./%s:[++]\n",*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" ({ "{") (expression_statement "printf("\n./%s:[++]\n",*puVar17);" (call_expression "printf("\n./%s:[++]\n",*puVar17)" (identifier "printf") (argument_list "("\n./%s:[++]\n",*puVar17)" (( "(") (string_literal ""\n./%s:[++]\n"" (" """) (escape_sequence "\n") (string_content "./%s:[++]") (escape_sequence "\n") (" """)) (, ",") (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")) (else_clause "else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" (else "else") (if_statement "if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }\n                  else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" (if "if") (parenthesized_expression "((local_a4 == (undefined4 *)0x0) || (lVar28 == 0))" (( "(") (binary_expression "(local_a4 == (undefined4 *)0x0) || (lVar28 == 0)" (parenthesized_expression "(local_a4 == (undefined4 *)0x0)" (( "(") (binary_expression "local_a4 == (undefined4 *)0x0" (identifier "local_a4") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(lVar28 == 0)" (( "(") (binary_expression "lVar28 == 0" (identifier "lVar28") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                    uVar11 = *puVar17;\n                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;\n                    printf(pcVar6,uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" ({ "{") (expression_statement "uVar11 = *puVar17;" (assignment_expression "uVar11 = *puVar17" (identifier "uVar11") (= "=") (pointer_expression "*puVar17" (* "*") (identifier "puVar17"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)\n                    ;" (assignment_expression "pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)" (identifier "dcgettext") (argument_list "(0,"\n [Use file %s in directory table entry %d]\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""\n [Use file %s in directory table entry %d]\n"" (" """) (escape_sequence "\n") (string_content " [Use file %s in directory table entry %d]") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,uVar11,uVar19);" (call_expression "printf(pcVar6,uVar11,uVar19)" (identifier "printf") (argument_list "(pcVar6,uVar11,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar11") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")) (else_clause "else {\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" (else "else") (compound_statement "{\n                    if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }\n                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                  }" ({ "{") (if_statement "if (local_b0 < (local_b4 < uVar19)) {\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" (if "if") (parenthesized_expression "(local_b0 < (local_b4 < uVar19))" (( "(") (binary_expression "local_b0 < (local_b4 < uVar19)" (identifier "local_b0") (< "<") (parenthesized_expression "(local_b4 < uVar19)" (( "(") (binary_expression "local_b4 < uVar19" (identifier "local_b4") (< "<") (identifier "uVar19")) () ")"))) () ")")) (compound_statement "{\n                      uVar11 = FUN_0004cb50(0);\n                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);\n                      warn(uVar12,uVar19,uVar11);\n                      pcVar6 = "\n <over large directory table entry %u>\n";\n                      goto code_r0x0005b184;\n                    }" ({ "{") (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);" (assignment_expression "uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"directory index %u > number of directories %s\n",5)" (identifier "dcgettext") (argument_list "(0,"directory index %u > number of directories %s\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""directory index %u > number of directories %s\n"" (" """) (string_content "directory index %u > number of directories %s") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar12,uVar19,uVar11);" (call_expression "warn(uVar12,uVar19,uVar11)" (identifier "warn") (argument_list "(uVar12,uVar19,uVar11)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar19") (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "pcVar6 = "\n <over large directory table entry %u>\n";" (assignment_expression "pcVar6 = "\n <over large directory table entry %u>\n"" (identifier "pcVar6") (= "=") (string_literal ""\n <over large directory table entry %u>\n"" (" """) (escape_sequence "\n") (string_content " <over large directory table entry %u>") (escape_sequence "\n") (" """))) (; ";")) (goto_statement "goto code_r0x0005b184;" (goto "goto") (statement_identifier "code_r0x0005b184") (; ";")) (} "}"))) (expression_statement "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);" (call_expression "printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" (identifier "printf") (argument_list "("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17)" (( "(") (string_literal ""\n%s/%s:\n"" (" """) (escape_sequence "\n") (string_content "%s/%s:") (escape_sequence "\n") (" """)) (, ",") (subscript_expression "local_a4[uVar19 - 1]" (identifier "local_a4") ([ "[") (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1")) (] "]")) (, ",") (pointer_expression "*puVar17" (* "*") (identifier "puVar17")) () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")))))) (break_statement "break;" (break "break") (; ";")) (} "}"))) (expression_statement "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);" (assignment_expression "uVar11 = dcgettext(0,"file index %u > number of files %u\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"file index %u > number of files %u\n",5)" (identifier "dcgettext") (argument_list "(0,"file index %u > number of files %u\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""file index %u > number of files %u\n"" (" """) (string_content "file index %u > number of files %u") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11,iVar14,local_94);" (call_expression "warn(uVar11,iVar14,local_94)" (identifier "warn") (argument_list "(uVar11,iVar14,local_94)" (( "(") (identifier "uVar11") (, ",") (identifier "iVar14") (, ",") (identifier "local_94") () ")"))) (; ";")) (expression_statement "pcVar6 = "\n <over large file table index %u>";" (assignment_expression "pcVar6 = "\n <over large file table index %u>"" (identifier "pcVar6") (= "=") (string_literal ""\n <over large file table index %u>"" (" """) (escape_sequence "\n") (string_content " <over large file table index %u>") (" """))) (; ";")) (} "}")))) (goto_statement "goto code_r0x0005b184;" (goto "goto") (statement_identifier "code_r0x0005b184") (; ";"))) (case_statement "case (undefined4 *)0x5:\n              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              local_bc = pbVar20 + local_44;\n              break;" (case "case") (cast_expression "(undefined4 *)0x5" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x5")) (: ":") (expression_statement "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "DAT_000b9d14") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x6:\n              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);\n              local_bc = pbVar20;\n              break;" (case "case") (cast_expression "(undefined4 *)0x6" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x6")) (: ":") (expression_statement "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);" (assignment_expression "DAT_000b9d18 = (uint)(DAT_000b9d18 == 0)" (identifier "DAT_000b9d18") (= "=") (call_expression "(uint)(DAT_000b9d18 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_000b9d18 == 0)" (( "(") (binary_expression "DAT_000b9d18 == 0" (identifier "DAT_000b9d18") (== "==") (number_literal "0")) () ")")))) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x7:\n              DAT_000b9d1c = 1;\n              local_bc = pbVar20;\n              break;" (case "case") (cast_expression "(undefined4 *)0x7" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7")) (: ":") (expression_statement "DAT_000b9d1c = 1;" (assignment_expression "DAT_000b9d1c = 1" (identifier "DAT_000b9d1c") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x8:\n              uVar19 = local_2c & 0xff;\n              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));\n              local_bc = pbVar20;\n              if (local_2c._1_1_ == 1) goto code_r0x0005c370;\n              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;\n              local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);\ncode_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;\n              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);\n              lVar30 = lVar29 + (ulonglong)uVar19;\n              lVar29 = lVar29 + (ulonglong)uVar19;\n              if (uVar19 != 0) goto code_r0x0005ae7e;\n              break;" (case "case") (cast_expression "(undefined4 *)0x8" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x8")) (: ":") (expression_statement "uVar19 = local_2c & 0xff;" (assignment_expression "uVar19 = local_2c & 0xff" (identifier "uVar19") (= "=") (binary_expression "local_2c & 0xff" (identifier "local_2c") (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff));" (assignment_expression "iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" (identifier "iVar14") (= "=") (cast_expression "(int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff))" (( "(") (binary_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff) /\n                            (ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(~(uint)local_24._1_1_ & 0xff)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(~(uint)local_24._1_1_ & 0xff)" (( "(") (binary_expression "~(uint)local_24._1_1_ & 0xff" (unary_expression "~(uint)local_24._1_1_" (~ "~") (cast_expression "(uint)local_24._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_24._1_1_" (identifier "local_24") (. ".") (field_identifier "_1_1_")))) (& "&") (number_literal "0xff")) () ")"))) (/ "/") (call_expression "(ulonglong)(longlong)(int)(local_24 & 0xff)" (call_expression "(ulonglong)(longlong)(int)" (call_expression "(ulonglong)(longlong)" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(longlong)" (( "(") (identifier "longlong") () ")"))) (argument_list "(int)" (( "(") (identifier "int") () ")"))) (argument_list "(local_24 & 0xff)" (( "(") (binary_expression "local_24 & 0xff" (identifier "local_24") (& "&") (number_literal "0xff")) () ")")))) () ")")))) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (if_statement "if (local_2c._1_1_ == 1) goto code_r0x0005c370;" (if "if") (parenthesized_expression "(local_2c._1_1_ == 1)" (( "(") (binary_expression "local_2c._1_1_ == 1" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (number_literal "1")) () ")")) (goto_statement "goto code_r0x0005c370;" (goto "goto") (statement_identifier "code_r0x0005c370") (; ";"))) (expression_statement "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;" (assignment_expression "uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" (identifier "uVar7") (= "=") (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" (( "(") (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) (+ "+") (identifier "iVar14")) () ")")) (/ "/") (cast_expression "(uint)local_2c._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_"))))) (; ";")) (expression_statement "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);" (assignment_expression "local_ac._0_1_ =\n                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (field_expression "local_ac._0_1_" (identifier "local_ac") (. ".") (field_identifier "_0_1_")) (= "=") (call_expression "(undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (parenthesized_expression "(undefined1)" (( "(") (identifier "undefined1") () ")")) (argument_list "(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_)" (( "(") (binary_expression "((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_" (parenthesized_expression "((uint)(byte)DAT_000b9d20 + iVar14)" (( "(") (binary_expression "(uint)(byte)DAT_000b9d20 + iVar14" (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) (+ "+") (identifier "iVar14")) () ")")) (% "%") (cast_expression "(uint)local_2c._1_1_" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")))) () ")")))) (; ";")) (labeled_statement "code_r0x0005ae5c:\n              uVar19 = uVar19 * uVar7;" (statement_identifier "code_r0x0005ae5c") (: ":") (expression_statement "uVar19 = uVar19 * uVar7;" (assignment_expression "uVar19 = uVar19 * uVar7" (identifier "uVar19") (= "=") (binary_expression "uVar19 * uVar7" (identifier "uVar19") (* "*") (identifier "uVar7"))) (; ";"))) (expression_statement "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);" (assignment_expression "DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" (identifier "DAT_000b9d20") (= "=") (call_expression "CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_)" (identifier "CONCAT11") (argument_list "(DAT_000b9d20._1_1_,local_ac._0_1_)" (( "(") (field_expression "DAT_000b9d20._1_1_" (identifier "DAT_000b9d20") (. ".") (field_identifier "_1_1_")) (, ",") (field_expression "local_ac._0_1_" (identifier "local_ac") (. ".") (field_identifier "_0_1_")) () ")")))) (; ";")) (expression_statement "lVar30 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar30 = lVar29 + (ulonglong)uVar19" (identifier "lVar30") (= "=") (binary_expression "lVar29 + (ulonglong)uVar19" (identifier "lVar29") (+ "+") (cast_expression "(ulonglong)uVar19" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar19")))) (; ";")) (expression_statement "lVar29 = lVar29 + (ulonglong)uVar19;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uVar19" (identifier "lVar29") (= "=") (binary_expression "lVar29 + (ulonglong)uVar19" (identifier "lVar29") (+ "+") (cast_expression "(ulonglong)uVar19" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar19")))) (; ";")) (if_statement "if (uVar19 != 0) goto code_r0x0005ae7e;" (if "if") (parenthesized_expression "(uVar19 != 0)" (( "(") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto code_r0x0005ae7e;" (goto "goto") (statement_identifier "code_r0x0005ae7e") (; ";"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case (undefined4 *)0x9:\n              local_bc = local_bc + 3;\n              if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }\n              DAT_000b9d20 = DAT_000b9d20 & 0xff00;\n              lVar29 = lVar29 + (ulonglong)uStack_84;\n              lVar30 = lVar29;\n              if (local_48 <= local_bc) goto LAB_0005adb0;\n              goto LAB_0005ad11;" (case "case") (cast_expression "(undefined4 *)0x9" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9")) (: ":") (expression_statement "local_bc = local_bc + 3;" (assignment_expression "local_bc = local_bc + 3" (identifier "local_bc") (= "=") (binary_expression "local_bc + 3" (identifier "local_bc") (+ "+") (number_literal "3"))) (; ";")) (if_statement "if (local_bc < pbVar5) {\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }\n              else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" (if "if") (parenthesized_expression "(local_bc < pbVar5)" (( "(") (binary_expression "local_bc < pbVar5" (identifier "local_bc") (< "<") (identifier "pbVar5")) () ")")) (compound_statement "{\n                iVar14 = 2;\ncode_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" ({ "{") (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" (identifier "iVar14") (= "=") (number_literal "2")) (; ";")) (labeled_statement "code_r0x0005c4cd:\n                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" (statement_identifier "code_r0x0005c4cd") (: ":") (expression_statement "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);" (assignment_expression "uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14)" (identifier "uStack_84") (= "=") (call_expression "(*DAT_000b9dd8)(pbVar20,iVar14)" (parenthesized_expression "(*DAT_000b9dd8)" (( "(") (pointer_expression "*DAT_000b9dd8" (* "*") (identifier "DAT_000b9dd8")) () ")")) (argument_list "(pbVar20,iVar14)" (( "(") (identifier "pbVar20") (, ",") (identifier "iVar14") () ")")))) (; ";"))) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")) (else_clause "else {\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" (else "else") (compound_statement "{\n                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;\n                uStack_84 = 0;\n              }" ({ "{") (if_statement "if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))\n                goto code_r0x0005c4cd;" (if "if") (parenthesized_expression "((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))" (( "(") (binary_expression "(pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" (parenthesized_expression "(pbVar20 < pbVar5)" (( "(") (binary_expression "pbVar20 < pbVar5" (identifier "pbVar20") (< "<") (identifier "pbVar5")) () ")")) (&& "&&") (parenthesized_expression "(iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8)" (( "(") (comma_expression "iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8" (assignment_expression "iVar14 = (int)pbVar5 - (int)pbVar20" (identifier "iVar14") (= "=") (binary_expression "(int)pbVar5 - (int)pbVar20" (cast_expression "(int)pbVar5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar5")) (- "-") (cast_expression "(int)pbVar20" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pbVar20")))) (, ",") (binary_expression "iVar14 - 1U < 8" (binary_expression "iVar14 - 1U" (identifier "iVar14") (- "-") (number_literal "1U")) (< "<") (number_literal "8"))) () ")"))) () ")")) (goto_statement "goto code_r0x0005c4cd;" (goto "goto") (statement_identifier "code_r0x0005c4cd") (; ";"))) (expression_statement "uStack_84 = 0;" (assignment_expression "uStack_84 = 0" (identifier "uStack_84") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "DAT_000b9d20 = DAT_000b9d20 & 0xff00;" (assignment_expression "DAT_000b9d20 = DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (= "=") (binary_expression "DAT_000b9d20 & 0xff00" (identifier "DAT_000b9d20") (& "&") (number_literal "0xff00"))) (; ";")) (expression_statement "lVar29 = lVar29 + (ulonglong)uStack_84;" (assignment_expression "lVar29 = lVar29 + (ulonglong)uStack_84" (identifier "lVar29") (= "=") (binary_expression "lVar29 + (ulonglong)uStack_84" (identifier "lVar29") (+ "+") (cast_expression "(ulonglong)uStack_84" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uStack_84")))) (; ";")) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" (identifier "lVar30") (= "=") (identifier "lVar29")) (; ";")) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" (if "if") (parenthesized_expression "(local_48 <= local_bc)" (( "(") (binary_expression "local_48 <= local_bc" (identifier "local_48") (<= "<=") (identifier "local_bc")) () ")")) (goto_statement "goto LAB_0005adb0;" (goto "goto") (statement_identifier "LAB_0005adb0") (; ";"))) (goto_statement "goto LAB_0005ad11;" (goto "goto") (statement_identifier "LAB_0005ad11") (; ";"))) (case_statement "case (undefined4 *)0xc:\n              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);\n              local_bc = pbVar20 + local_44;\n              pcVar6 = "  Set ISA to %lu\n";\ncode_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);\n              printf(pcVar6,uVar19);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              break;" (case "case") (cast_expression "(undefined4 *)0xc" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xc")) (: ":") (expression_statement "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);" (assignment_expression "uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "uVar19") (= "=") (call_expression "FUN_0004f990(pbVar20,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(pbVar20,&local_44,0,pbVar5)" (( "(") (identifier "pbVar20") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "local_bc = pbVar20 + local_44;" (assignment_expression "local_bc = pbVar20 + local_44" (identifier "local_bc") (= "=") (binary_expression "pbVar20 + local_44" (identifier "pbVar20") (+ "+") (identifier "local_44"))) (; ";")) (expression_statement "pcVar6 = "  Set ISA to %lu\n";" (assignment_expression "pcVar6 = "  Set ISA to %lu\n"" (identifier "pcVar6") (= "=") (string_literal ""  Set ISA to %lu\n"" (" """) (string_content "  Set ISA to %lu") (escape_sequence "\n") (" """))) (; ";")) (labeled_statement "code_r0x0005b184:\n              pcVar6 = (char *)dcgettext(0,pcVar6,5);" (statement_identifier "code_r0x0005b184") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,pcVar6,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar6,5)" (identifier "dcgettext") (argument_list "(0,pcVar6,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") (, ",") (number_literal "5") () ")"))))) (; ";"))) (expression_statement "printf(pcVar6,uVar19);" (call_expression "printf(pcVar6,uVar19)" (identifier "printf") (argument_list "(pcVar6,uVar19)" (( "(") (identifier "pcVar6") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "default:\n              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);\n              printf(pcVar6,local_ac);\n              local_bc = pbVar20;\n              if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }\n              putc(10,*(FILE **)local_9c);\n              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              pbVar20 = local_bc;\ncode_r0x0005af82:\n              local_bc = pbVar20;\n              if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" (default "default") (: ":") (expression_statement "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,"  Unknown opcode %d with operands: ",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"  Unknown opcode %d with operands: ",5)" (identifier "dcgettext") (argument_list "(0,"  Unknown opcode %d with operands: ",5)" (( "(") (number_literal "0") (, ",") (string_literal ""  Unknown opcode %d with operands: "" (" """) (string_content "  Unknown opcode %d with operands: ") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar6,local_ac);" (call_expression "printf(pcVar6,local_ac)" (identifier "printf") (argument_list "(pcVar6,local_ac)" (( "(") (identifier "pcVar6") (, ",") (identifier "local_ac") () ")"))) (; ";")) (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";")) (if_statement "if ((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" (if "if") (parenthesized_expression "((local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0))" (( "(") (binary_expression "(local_90 != 0) &&\n                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" (parenthesized_expression "(local_90 != 0)" (( "(") (binary_expression "local_90 != 0" (identifier "local_90") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)" (( "(") (comma_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0" (assignment_expression "uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac)" (identifier "uVar19") (= "=") (binary_expression "(uint)*(byte *)(local_90 + -1 + (int)local_ac)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(byte *)(local_90 + -1 + (int)local_ac)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_90 + -1 + (int)local_ac)" (( "(") (binary_expression "local_90 + -1 + (int)local_ac" (binary_expression "local_90 + -1" (identifier "local_90") (+ "+") (number_literal "-1")) (+ "+") (cast_expression "(int)local_ac" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_ac"))) () ")"))))) (, ",") (binary_expression "uVar19 != 0" (identifier "uVar19") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n                for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }\n                FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                uVar11 = FUN_0004cb50(0);\n                printf("0x%s%s",uVar11,&DAT_0007bc55);\n                local_bc = local_bc + local_44;\n              }" ({ "{") (for_statement "for (; uVar19 != 1; uVar19 = uVar19 - 1) {\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" (for "for") (( "(") (; ";") (binary_expression "uVar19 != 1" (identifier "uVar19") (!= "!=") (number_literal "1")) (; ";") (assignment_expression "uVar19 = uVar19 - 1" (identifier "uVar19") (= "=") (binary_expression "uVar19 - 1" (identifier "uVar19") (- "-") (number_literal "1"))) () ")") (compound_statement "{\n                  FUN_0004f990(local_bc,&local_44,0,pbVar5);\n                  uVar11 = FUN_0004cb50(0);\n                  printf("0x%s%s",uVar11,&DAT_0007c4b1);\n                  local_bc = local_bc + local_44;\n                }" ({ "{") (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_bc,&local_44,0,pbVar5)" (( "(") (identifier "local_bc") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007c4b1);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007c4b1)" (identifier "printf") (argument_list "("0x%s%s",uVar11,&DAT_0007c4b1)" (( "(") (string_literal ""0x%s%s"" (" """) (string_content "0x%s%s") (" """)) (, ",") (identifier "uVar11") (, ",") (pointer_expression "&DAT_0007c4b1" (& "&") (identifier "DAT_0007c4b1")) () ")"))) (; ";")) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" (identifier "local_bc") (= "=") (binary_expression "local_bc + local_44" (identifier "local_bc") (+ "+") (identifier "local_44"))) (; ";")) (} "}"))) (expression_statement "FUN_0004f990(local_bc,&local_44,0,pbVar5);" (call_expression "FUN_0004f990(local_bc,&local_44,0,pbVar5)" (identifier "FUN_0004f990") (argument_list "(local_bc,&local_44,0,pbVar5)" (( "(") (identifier "local_bc") (, ",") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (number_literal "0") (, ",") (identifier "pbVar5") () ")"))) (; ";")) (expression_statement "uVar11 = FUN_0004cb50(0);" (assignment_expression "uVar11 = FUN_0004cb50(0)" (identifier "uVar11") (= "=") (call_expression "FUN_0004cb50(0)" (identifier "FUN_0004cb50") (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "printf("0x%s%s",uVar11,&DAT_0007bc55);" (call_expression "printf("0x%s%s",uVar11,&DAT_0007bc55)" (identifier "printf") (argument_list "("0x%s%s",uVar11,&DAT_0007bc55)" (( "(") (string_literal ""0x%s%s"" (" """) (string_content "0x%s%s") (" """)) (, ",") (identifier "uVar11") (, ",") (pointer_expression "&DAT_0007bc55" (& "&") (identifier "DAT_0007bc55")) () ")"))) (; ";")) (expression_statement "local_bc = local_bc + local_44;" (assignment_expression "local_bc = local_bc + local_44" (identifier "local_bc") (= "=") (binary_expression "local_bc + local_44" (identifier "local_bc") (+ "+") (identifier "local_44"))) (; ";")) (} "}"))) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" (identifier "putc") (argument_list "(10,*(FILE **)local_9c)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)local_9c" (* "*") (cast_expression "(FILE **)local_9c" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_9c"))) () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "pbVar20 = local_bc;" (assignment_expression "pbVar20 = local_bc" (identifier "pbVar20") (= "=") (identifier "local_bc")) (; ";")) (labeled_statement "code_r0x0005af82:\n              local_bc = pbVar20;" (statement_identifier "code_r0x0005af82") (: ":") (expression_statement "local_bc = pbVar20;" (assignment_expression "local_bc = pbVar20" (identifier "local_bc") (= "=") (identifier "pbVar20")) (; ";"))) (if_statement "if (local_ac == (undefined4 *)0x1) {\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" (if "if") (parenthesized_expression "(local_ac == (undefined4 *)0x1)" (( "(") (binary_expression "local_ac == (undefined4 *)0x1" (identifier "local_ac") (== "==") (cast_expression "(undefined4 *)0x1" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) () ")")) (compound_statement "{\njoined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }\n                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                DAT_000b9d00 = (uint)lVar29;\n                sVar8 = strlen(pcVar6);\n                if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }\n                DAT_000b9d08 = DAT_000b9d08 + 1;\n                if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }\n                free(pcVar9);\n                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n              }" ({ "{") (labeled_statement "joined_r0x0005af93:\n                if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" (statement_identifier "joined_r0x0005af93") (: ":") (if_statement "if (local_b8 == (byte *)0x0) {\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }\n                else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" (if "if") (parenthesized_expression "(local_b8 == (byte *)0x0)" (( "(") (binary_expression "local_b8 == (byte *)0x0" (identifier "local_b8") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  pcVar6 = "<unknown>";\nLAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  pcVar6 = (char *)dcgettext(0,pcVar6,5);\n                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                }" ({ "{") (expression_statement "pcVar6 = "<unknown>";" (assignment_expression "pcVar6 = "<unknown>"" (identifier "pcVar6") (= "=") (string_literal ""<unknown>"" (" """) (string_content "<unknown>") (" """))) (; ";")) (labeled_statement "LAB_0005afab:\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (statement_identifier "LAB_0005afab") (: ":") (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";"))) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "pcVar6 = (char *)dcgettext(0,pcVar6,5);" (assignment_expression "pcVar6 = (char *)dcgettext(0,pcVar6,5)" (identifier "pcVar6") (= "=") (cast_expression "(char *)dcgettext(0,pcVar6,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar6,5)" (identifier "dcgettext") (argument_list "(0,pcVar6,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar6") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")) (else_clause "else {\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" (else "else") (compound_statement "{\n                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);\n                  DAT_000b9d00 = (uint)lVar29;\n                  uVar19 = DAT_000b9d0c - 1;\n                  if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }\n                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);\n                }" ({ "{") (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "uVar19 = DAT_000b9d0c - 1;" (assignment_expression "uVar19 = DAT_000b9d0c - 1" (identifier "uVar19") (= "=") (binary_expression "DAT_000b9d0c - 1" (identifier "DAT_000b9d0c") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (local_94 <= uVar19) {\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" (if "if") (parenthesized_expression "(local_94 <= uVar19)" (( "(") (binary_expression "local_94 <= uVar19" (identifier "local_94") (<= "<=") (identifier "uVar19")) () ")")) (compound_statement "{\n                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);\n                    warn(uVar11,uVar19);\n                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n                    pcVar6 = "<corrupt>";\n                    goto LAB_0005afab;\n                  }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);" (assignment_expression "uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"corrupt file index %u encountered\n",5)" (identifier "dcgettext") (argument_list "(0,"corrupt file index %u encountered\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""corrupt file index %u encountered\n"" (" """) (string_content "corrupt file index %u encountered") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "warn(uVar11,uVar19);" (call_expression "warn(uVar11,uVar19)" (identifier "warn") (argument_list "(uVar11,uVar19)" (( "(") (identifier "uVar11") (, ",") (identifier "uVar19") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (expression_statement "pcVar6 = "<corrupt>";" (assignment_expression "pcVar6 = "<corrupt>"" (identifier "pcVar6") (= "=") (string_literal ""<corrupt>"" (" """) (string_content "<corrupt>") (" """))) (; ";")) (goto_statement "goto LAB_0005afab;" (goto "goto") (statement_identifier "LAB_0005afab") (; ";")) (} "}"))) (expression_statement "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);" (assignment_expression "pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4)" (identifier "pcVar6") (= "=") (pointer_expression "*(char **)((int)local_b8 + uVar19 * 4 * 4)" (* "*") (cast_expression "(char **)((int)local_b8 + uVar19 * 4 * 4)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)local_b8 + uVar19 * 4 * 4)" (( "(") (binary_expression "(int)local_b8 + uVar19 * 4 * 4" (cast_expression "(int)local_b8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_b8")) (+ "+") (binary_expression "uVar19 * 4 * 4" (binary_expression "uVar19 * 4" (identifier "uVar19") (* "*") (number_literal "4")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (} "}"))))) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "sVar8 = strlen(pcVar6);" (assignment_expression "sVar8 = strlen(pcVar6)" (identifier "sVar8") (= "=") (call_expression "strlen(pcVar6)" (identifier "strlen") (argument_list "(pcVar6)" (( "(") (identifier "pcVar6") () ")")))) (; ";")) (if_statement "if (sVar8 < 0x24) {\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }\n                else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" (if "if") (parenthesized_expression "(sVar8 < 0x24)" (( "(") (binary_expression "sVar8 < 0x24" (identifier "sVar8") (< "<") (number_literal "0x24")) () ")")) (compound_statement "{\n                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);\n                  strncpy(pcVar9,pcVar6,sVar8 + 1);\nLAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" ({ "{") (expression_statement "pcVar9 = (char *)FUN_0006b190(sVar8 + 1);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(sVar8 + 1)" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_0006b190(sVar8 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190(sVar8 + 1)" (identifier "FUN_0006b190") (argument_list "(sVar8 + 1)" (( "(") (binary_expression "sVar8 + 1" (identifier "sVar8") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "strncpy(pcVar9,pcVar6,sVar8 + 1);" (call_expression "strncpy(pcVar9,pcVar6,sVar8 + 1)" (identifier "strncpy") (argument_list "(pcVar9,pcVar6,sVar8 + 1)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar6") (, ",") (binary_expression "sVar8 + 1" (identifier "sVar8") (+ "+") (number_literal "1")) () ")"))) (; ";")) (labeled_statement "LAB_0005ac8b:\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" (statement_identifier "LAB_0005ac8b") (: ":") (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" (if "if") (parenthesized_expression "(local_2c._1_1_ == '\x01')" (( "(") (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" ({ "{") (expression_statement "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" (identifier "printf") (argument_list "("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" (( "(") (string_literal ""%-35s  %11d  %#18llx"" (" """) (string_content "%-35s  %11d  %#18llx") (" """)) (, ",") (identifier "pcVar9") (, ",") (identifier "DAT_000b9d10") (, ",") (identifier "DAT_000b9d00") (, ",") (identifier "DAT_000b9d04") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" (else "else") (compound_statement "{\n                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" ({ "{") (expression_statement "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" (identifier "printf") (argument_list "("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" (( "(") (string_literal ""%-35s  %11d  %#18llx[%d]"" (" """) (string_content "%-35s  %11d  %#18llx[%d]") (" """)) (, ",") (identifier "pcVar9") (, ",") (identifier "DAT_000b9d10") (, ",") (identifier "DAT_000b9d00") (, ",") (identifier "DAT_000b9d04") (, ",") (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) () ")"))) (; ";")) (} "}"))))) (} "}")) (else_clause "else {\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" (else "else") (compound_statement "{\n                  if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }\n                  strncpy(pcVar9,pcVar6,__n);\n                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;\n                  if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }\n                }" ({ "{") (if_statement "if (DAT_000b9da4 == 0) {\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }\n                  else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" (if "if") (parenthesized_expression "(DAT_000b9da4 == 0)" (( "(") (binary_expression "DAT_000b9da4 == 0" (identifier "DAT_000b9da4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    pcVar9 = (char *)FUN_0006b190(0x24);\n                    __n = 0x24;\n                    pcVar6 = pcVar6 + (sVar8 - 0x23);\n                  }" ({ "{") (expression_statement "pcVar9 = (char *)FUN_0006b190(0x24);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(0x24)" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_0006b190(0x24)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190(0x24)" (identifier "FUN_0006b190") (argument_list "(0x24)" (( "(") (number_literal "0x24") () ")"))))) (; ";")) (expression_statement "__n = 0x24;" (assignment_expression "__n = 0x24" (identifier "__n") (= "=") (number_literal "0x24")) (; ";")) (expression_statement "pcVar6 = pcVar6 + (sVar8 - 0x23);" (assignment_expression "pcVar6 = pcVar6 + (sVar8 - 0x23)" (identifier "pcVar6") (= "=") (binary_expression "pcVar6 + (sVar8 - 0x23)" (identifier "pcVar6") (+ "+") (parenthesized_expression "(sVar8 - 0x23)" (( "(") (binary_expression "sVar8 - 0x23" (identifier "sVar8") (- "-") (number_literal "0x23")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" (else "else") (compound_statement "{\n                    __n = sVar8 + 1;\n                    pcVar9 = (char *)FUN_0006b190(__n);\n                  }" ({ "{") (expression_statement "__n = sVar8 + 1;" (assignment_expression "__n = sVar8 + 1" (identifier "__n") (= "=") (binary_expression "sVar8 + 1" (identifier "sVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar9 = (char *)FUN_0006b190(__n);" (assignment_expression "pcVar9 = (char *)FUN_0006b190(__n)" (identifier "pcVar9") (= "=") (cast_expression "(char *)FUN_0006b190(__n)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0006b190(__n)" (identifier "FUN_0006b190") (argument_list "(__n)" (( "(") (identifier "__n") () ")"))))) (; ";")) (} "}")))) (expression_statement "strncpy(pcVar9,pcVar6,__n);" (call_expression "strncpy(pcVar9,pcVar6,__n)" (identifier "strncpy") (argument_list "(pcVar9,pcVar6,__n)" (( "(") (identifier "pcVar9") (, ",") (identifier "pcVar6") (, ",") (identifier "__n") () ")"))) (; ";")) (if_statement "if (DAT_000b9da4 == 0) goto LAB_0005ac8b;" (if "if") (parenthesized_expression "(DAT_000b9da4 == 0)" (( "(") (binary_expression "DAT_000b9da4 == 0" (identifier "DAT_000b9da4") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0005ac8b;" (goto "goto") (statement_identifier "LAB_0005ac8b") (; ";"))) (if_statement "if (local_2c._1_1_ == '\x01') {\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }\n                  else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" (if "if") (parenthesized_expression "(local_2c._1_1_ == '\x01')" (( "(") (binary_expression "local_2c._1_1_ == '\x01'" (field_expression "local_2c._1_1_" (identifier "local_2c") (. ".") (field_identifier "_1_1_")) (== "==") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) () ")")) (compound_statement "{\n                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);\n                  }" ({ "{") (expression_statement "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);" (call_expression "printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" (identifier "printf") (argument_list "("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04)" (( "(") (string_literal ""%s  %11d  %#18llx"" (" """) (string_content "%s  %11d  %#18llx") (" """)) (, ",") (identifier "pcVar9") (, ",") (identifier "DAT_000b9d10") (, ",") (identifier "DAT_000b9d00") (, ",") (identifier "DAT_000b9d04") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" (else "else") (compound_statement "{\n                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);\n                  }" ({ "{") (expression_statement "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20);" (call_expression "printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" (identifier "printf") (argument_list "("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,\n                           (uint)(byte)DAT_000b9d20)" (( "(") (string_literal ""%s  %11d  %#18llx[%d]"" (" """) (string_content "%s  %11d  %#18llx[%d]") (" """)) (, ",") (identifier "pcVar9") (, ",") (identifier "DAT_000b9d10") (, ",") (identifier "DAT_000b9d00") (, ",") (identifier "DAT_000b9d04") (, ",") (cast_expression "(uint)(byte)DAT_000b9d20" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(byte)DAT_000b9d20" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_000b9d20"))) () ")"))) (; ";")) (} "}")))) (} "}")))) (if_statement "if (DAT_000b9d08 == 0) {\n                  putc(10,*(FILE **)local_9c);\n                }\n                else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" (if "if") (parenthesized_expression "(DAT_000b9d08 == 0)" (( "(") (binary_expression "DAT_000b9d08 == 0" (identifier "DAT_000b9d08") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  putc(10,*(FILE **)local_9c);\n                }" ({ "{") (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" (identifier "putc") (argument_list "(10,*(FILE **)local_9c)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)local_9c" (* "*") (cast_expression "(FILE **)local_9c" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_9c"))) () ")"))) (; ";")) (} "}")) (else_clause "else {\n                  printf("  %6u\n",DAT_000b9d08);\n                }" (else "else") (compound_statement "{\n                  printf("  %6u\n",DAT_000b9d08);\n                }" ({ "{") (expression_statement "printf("  %6u\n",DAT_000b9d08);" (call_expression "printf("  %6u\n",DAT_000b9d08)" (identifier "printf") (argument_list "("  %6u\n",DAT_000b9d08)" (( "(") (string_literal ""  %6u\n"" (" """) (string_content "  %6u") (escape_sequence "\n") (" """)) (, ",") (identifier "DAT_000b9d08") () ")"))) (; ";")) (} "}")))) (expression_statement "DAT_000b9d08 = DAT_000b9d08 + 1;" (assignment_expression "DAT_000b9d08 = DAT_000b9d08 + 1" (identifier "DAT_000b9d08") (= "=") (binary_expression "DAT_000b9d08 + 1" (identifier "DAT_000b9d08") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (local_ac == (undefined4 *)0xffffffff) {\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" (if "if") (parenthesized_expression "(local_ac == (undefined4 *)0xffffffff)" (( "(") (binary_expression "local_ac == (undefined4 *)0xffffffff" (identifier "local_ac") (== "==") (cast_expression "(undefined4 *)0xffffffff" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;\n                  DAT_000b9d00 = 0;\n                  DAT_000b9d04 = 0;\n                  DAT_000b9d08 = 0;\n                  DAT_000b9d20 = 0;\n                  DAT_000b9d0c = 1;\n                  DAT_000b9d10 = (undefined1 *)0x1;\n                  DAT_000b9d14 = 0;\n                  DAT_000b9d1c = 0;\n                  DAT_000b9d24 = 0;\n                  putc(10,*(FILE **)local_9c);\n                }" ({ "{") (expression_statement "DAT_000b9d18 = local_2c >> 0x10 & 0xff;" (assignment_expression "DAT_000b9d18 = local_2c >> 0x10 & 0xff" (identifier "DAT_000b9d18") (= "=") (binary_expression "local_2c >> 0x10 & 0xff" (binary_expression "local_2c >> 0x10" (identifier "local_2c") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (expression_statement "DAT_000b9d00 = 0;" (assignment_expression "DAT_000b9d00 = 0" (identifier "DAT_000b9d00") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d04 = 0;" (assignment_expression "DAT_000b9d04 = 0" (identifier "DAT_000b9d04") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d08 = 0;" (assignment_expression "DAT_000b9d08 = 0" (identifier "DAT_000b9d08") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d20 = 0;" (assignment_expression "DAT_000b9d20 = 0" (identifier "DAT_000b9d20") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d0c = 1;" (assignment_expression "DAT_000b9d0c = 1" (identifier "DAT_000b9d0c") (= "=") (number_literal "1")) (; ";")) (expression_statement "DAT_000b9d10 = (undefined1 *)0x1;" (assignment_expression "DAT_000b9d10 = (undefined1 *)0x1" (identifier "DAT_000b9d10") (= "=") (cast_expression "(undefined1 *)0x1" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "DAT_000b9d14 = 0;" (assignment_expression "DAT_000b9d14 = 0" (identifier "DAT_000b9d14") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d1c = 0;" (assignment_expression "DAT_000b9d1c = 0" (identifier "DAT_000b9d1c") (= "=") (number_literal "0")) (; ";")) (expression_statement "DAT_000b9d24 = 0;" (assignment_expression "DAT_000b9d24 = 0" (identifier "DAT_000b9d24") (= "=") (number_literal "0")) (; ";")) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" (identifier "putc") (argument_list "(10,*(FILE **)local_9c)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)local_9c" (* "*") (cast_expression "(FILE **)local_9c" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_9c"))) () ")"))) (; ";")) (} "}"))) (expression_statement "free(pcVar9);" (call_expression "free(pcVar9)" (identifier "free") (argument_list "(pcVar9)" (( "(") (identifier "pcVar9") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}")))) (} "}"))) (expression_statement "lVar30 = lVar29;" (assignment_expression "lVar30 = lVar29" (identifier "lVar30") (= "=") (identifier "lVar29")) (; ";")) (if_statement "if (local_48 <= local_bc) goto LAB_0005adb0;" (if "if") (parenthesized_expression "(local_48 <= local_bc)" (( "(") (binary_expression "local_48 <= local_bc" (identifier "local_48") (<= "<=") (identifier "local_bc")) () ")")) (goto_statement "goto LAB_0005adb0;" (goto "goto") (statement_identifier "LAB_0005adb0") (; ";"))) (goto_statement "goto LAB_0005ad11;" (goto "goto") (statement_identifier "LAB_0005ad11") (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_0005adb0:\n        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (statement_identifier "LAB_0005adb0") (: ":") (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";"))) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (if_statement "if (local_b8 != (byte *)0x0) {\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" (if "if") (parenthesized_expression "(local_b8 != (byte *)0x0)" (( "(") (binary_expression "local_b8 != (byte *)0x0" (identifier "local_b8") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          free(local_b8);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" ({ "{") (expression_statement "free(local_b8);" (call_expression "free(local_b8)" (identifier "free") (argument_list "(local_b8)" (( "(") (identifier "local_b8") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}"))) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (if_statement "if (local_a4 != (undefined4 *)0x0) {\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" (if "if") (parenthesized_expression "(local_a4 != (undefined4 *)0x0)" (( "(") (binary_expression "local_a4 != (undefined4 *)0x0" (identifier "local_a4") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          free(local_a4);\n          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);\n        }" ({ "{") (expression_statement "free(local_a4);" (call_expression "free(local_a4)" (identifier "free") (argument_list "(local_a4)" (( "(") (identifier "local_a4") () ")"))) (; ";")) (expression_statement "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);" (assignment_expression "lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "lVar29") (= "=") (call_expression "CONCAT44(DAT_000b9d04,DAT_000b9d00)" (identifier "CONCAT44") (argument_list "(DAT_000b9d04,DAT_000b9d00)" (( "(") (identifier "DAT_000b9d04") (, ",") (identifier "DAT_000b9d00") () ")")))) (; ";")) (} "}"))) (expression_statement "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);" (assignment_expression "DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20)" (identifier "DAT_000b9d04") (= "=") (cast_expression "(int)((ulonglong)lVar29 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)lVar29 >> 0x20)" (( "(") (binary_expression "(ulonglong)lVar29 >> 0x20" (cast_expression "(ulonglong)lVar29" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "lVar29")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "DAT_000b9d00 = (uint)lVar29;" (assignment_expression "DAT_000b9d00 = (uint)lVar29" (identifier "DAT_000b9d00") (= "=") (cast_expression "(uint)lVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar29"))) (; ";")) (expression_statement "putc(10,*(FILE **)local_9c);" (call_expression "putc(10,*(FILE **)local_9c)" (identifier "putc") (argument_list "(10,*(FILE **)local_9c)" (( "(") (number_literal "10") (, ",") (pointer_expression "*(FILE **)local_9c" (* "*") (cast_expression "(FILE **)local_9c" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "local_9c"))) () ")"))) (; ";")) (expression_statement "uVar23 = pbVar5 < local_bc;" (assignment_expression "uVar23 = pbVar5 < local_bc" (identifier "uVar23") (= "=") (binary_expression "pbVar5 < local_bc" (identifier "pbVar5") (< "<") (identifier "local_bc"))) (; ";")) (expression_statement "uVar25 = pbVar5 == local_bc;" (assignment_expression "uVar25 = pbVar5 == local_bc" (identifier "uVar25") (= "=") (binary_expression "pbVar5 == local_bc" (identifier "pbVar5") (== "==") (identifier "local_bc"))) (; ";")) (if_statement "if (pbVar5 <= local_bc) {\n          return local_58;\n        }" (if "if") (parenthesized_expression "(pbVar5 <= local_bc)" (( "(") (binary_expression "pbVar5 <= local_bc" (identifier "pbVar5") (<= "<=") (identifier "local_bc")) () ")")) (compound_statement "{\n          return local_58;\n        }" ({ "{") (return_statement "return local_58;" (return "return") (identifier "local_58") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (} "}")) (else_clause "else if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" (else "else") (if_statement "if ((DAT_000b9db0 & 2) != 0) {\n    FUN_0004eb80();\n  }" (if "if") (parenthesized_expression "((DAT_000b9db0 & 2) != 0)" (( "(") (binary_expression "(DAT_000b9db0 & 2) != 0" (parenthesized_expression "(DAT_000b9db0 & 2)" (( "(") (binary_expression "DAT_000b9db0 & 2" (identifier "DAT_000b9db0") (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_0004eb80();\n  }" ({ "{") (expression_statement "FUN_0004eb80();" (call_expression "FUN_0004eb80()" (identifier "FUN_0004eb80") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))))) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}")))

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

int function_1(type_1 *section,void *file)

{
  type_2 var_34;
  type_3 *pcVar2;
  type_4 *puVar3;
  type_5 var_68;
  type_6 *var_4;
  char *pcVar5;
  type_7 var_18;
  type_8 var_33;
  type_7 var_37;
  size_t var_23;
  char *var_75;
  char *pcVar10;
  char *__format;
  type_9 *var_70;
  type_7 addrdelta;
  type_1 *extraout_ECX;
  int var_9;
  type_1 *extraout_ECX_00;
  type_1 *extraout_ECX_01;
  type_1 *extraout_ECX_02;
  type_1 *extraout_ECX_03;
  type_1 *extraout_ECX_04;
  type_9 uVar14;
  type_6 *var_50;
  type_8 *var_10;
  type_6 *var_64;
  type_10 *var_63;
  int var_20;
  type_8 *var_11;
  type_7 var_35;
  type_10 uVar21;
  type_6 *var_21;
  bool var_12;
  bool var_13;
  type_11 uVar25;
  bool bVar26;
  type_11 uVar27;
  type_8 bVar28;
  type_12 var_39;
  type_12 var_41;
  type_12 var_52;
  type_13 var_46;
  type_11 *puVar33;
  type_1 *pdVar34;
  type_7 *puVar35;
  type_7 *puVar36;
  type_9 *var_6;
  type_6 *in_stack_ffffff30;
  type_6 *var_28;
  type_9 **in_stack_ffffff34;
  type_10 in_stack_ffffff38;
  type_6 *var_3;
  type_6 *var_72;
  type_14 local_b4;
  type_7 var_44;
  int var_42;
  type_10 *var_65;
  type_6 *var_57;
  int var_58;
  type_9 *var_17;
  type_9 *var_49;
  type_7 var_61;
  type_9 local_88;
  type_7 var_73;
  type_7 var_59;
  type_9 *var_62;
  char *var_47;
  type_6 *var_56;
  int local_58;
  type_11 *local_54 [3];
  type_9 *var_32;
  type_7 var_27;
  type_6 linfo;
  
  bVar28 = 0;
  var_3 = (type_6 *)section->start;
  var_4 = (type_6 *)((int)&var_3->li_length + (int)section->size);
  if (var_1 == 0) {
    var_1 = 1;
  }
  else if ((var_1 & 1U) == 0) {
    if ((var_1 & 2U) != 0) {
      var_28 = (type_6 *)0x5a9b2;
      var_2((type_1 *)section->name,(bfd_boolean)&section->filename,
                (type_1 *)&var_1);
      uVar25 = var_3 < var_4;
      uVar27 = var_3 == var_4;
      if (!(bool)uVar25) goto LAB_0005a988;
      local_58 = 1;
      goto LAB_0005a9d0;
    }
    goto LAB_0005a988;
  }
  var_75 = section->name;
  if ((var_5 == 0) ||
     (var_6 = (type_9 *)section->filename, var_6 == (type_9 *)0x0)) {
    var_6 = (type_9 *)0x5;
    pcVar5 = (char *)var_7(0,"Raw dump of debug contents of section %s:\n\n");
    var_8(pcVar5,var_75);
  }
  else {
    pcVar5 = (char *)var_7(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)
    ;
    var_8(pcVar5,var_75);
  }
  puVar3 = PTR_stdout_000b3fd8;
  var_12 = var_3 < var_4;
  bVar26 = var_3 == var_4;
  var_28 = var_3;
  if (var_12) {
LAB_0005b368:
    do {
      var_9 = 0xc;
      var_10 = (type_8 *)section->name;
      var_11 = (type_8 *)".debug_line.";
      do {
        if (var_9 == 0) break;
        var_9 = var_9 + -1;
        var_12 = *var_10 < *var_11;
        bVar26 = *var_10 == *var_11;
        var_10 = var_10 + (type_7)bVar28 * -2 + 1;
        var_11 = var_11 + (type_7)bVar28 * -2 + 1;
      } while (bVar26);
      var_13 = false;
      var_12 = (!var_12 && !bVar26) == var_12;
      if (var_12) {
        var_9 = 0x10;
        var_10 = (type_8 *)section->name;
        var_11 = (type_8 *)".debug_line.dwo";
        do {
          if (var_9 == 0) break;
          var_9 = var_9 + -1;
          var_13 = *var_10 < *var_11;
          var_12 = *var_10 == *var_11;
          var_10 = var_10 + (type_7)bVar28 * -2 + 1;
          var_11 = var_11 + (type_7)bVar28 * -2 + 1;
        } while (var_12);
        if ((!var_13 && !var_12) == var_13) goto LAB_0005bd30;
        linfo.li_offset_size = DAT_000b7640;
        linfo.li_length._0_4_ = saved_linfo_11144;
        linfo.li_length._4_4_ = DAT_000b7624;
        linfo.li_version = (type_5)DAT_000b7628;
        linfo._10_2_ = DAT_000b7628._2_2_;
        linfo.li_prologue_length._0_4_ = DAT_000b762c;
        linfo.li_prologue_length._4_4_ = DAT_000b7630;
        linfo._20_4_ = var_15;
        linfo.li_line_base = DAT_000b7638;
        linfo.li_line_range = (type_9)DAT_000b763c;
        linfo.li_opcode_base = DAT_000b763c._1_1_;
        linfo._30_2_ = DAT_000b763c._2_2_;
        if ((type_9)DAT_000b763c == '\0') {
          var_75 = 
          "Partial .debug_line. section encountered without a prior full .debug_line section\n";
          var_32 = (type_9 *)var_4;
LAB_0005d6a3:
          var_6 = (type_9 *)0x5;
          var_75 = (char *)var_7(0,var_75);
          var_14(var_75);
          pdVar34 = extraout_ECX_04;
          goto LAB_0005d6b6;
        }
        state_machine_regs.is_stmt = var_15 >> 0x10 & 0xff;
        state_machine_regs.address._0_4_ = 0;
        state_machine_regs.address._4_4_ = 0;
        state_machine_regs.view = 0;
        state_machine_regs.file = 1;
        state_machine_regs.line = 1;
        state_machine_regs.column = 0;
        state_machine_regs.basic_block = 0;
        state_machine_regs.op_index = '\0';
        state_machine_regs.end_sequence = '\0';
        state_machine_regs.last_file_entry = 0;
        var_17 = (type_9 *)0x0;
        var_32 = (type_9 *)var_4;
      }
      else {
LAB_0005bd30:
        var_17 = var_16
                             ((type_1 *)&linfo,(type_9 *)&var_32,var_6,
                              in_stack_ffffff30,in_stack_ffffff34);
        pdVar34 = extraout_ECX_01;
        if (var_17 == (type_9 *)0x0) {
LAB_0005d6b6:
          uVar25 = 0;
          var_18 = var_1 & 2;
          uVar27 = var_18 == 0;
          var_39 = state_machine_regs.address;
          if ((bool)uVar27) goto LAB_0005a98d;
          var_28 = (type_6 *)0x5d6d7;
          var_2((type_1 *)section->name,(bfd_boolean)&section->filename,pdVar34);
          local_58 = 0;
          goto LAB_0005a9d0;
        }
        var_75 = (char *)var_7(0,"  Offset:                      0x%lx\n",5);
        var_8(var_75,(int)var_28 - (int)var_3);
        uVar21 = (type_10)linfo.li_length;
        var_75 = (char *)var_7(0,"  Length:                      %ld\n",5);
        var_8(var_75,uVar21);
        var_18 = linfo._8_4_ & 0xffff;
        var_75 = (char *)var_7(0,"  DWARF Version:               %d\n",5);
        var_8(var_75,var_18);
        uVar21 = (type_10)linfo.li_prologue_length;
        var_75 = (char *)var_7(0,"  Prologue Length:             %d\n",5);
        var_8(var_75,uVar21);
        var_18 = linfo._20_4_ & 0xff;
        var_75 = (char *)var_7(0,"  Minimum Instruction Length:  %d\n",5);
        var_8(var_75,var_18);
        if (3 < linfo.li_version) {
          var_18 = (type_7)linfo._20_4_ >> 8;
          var_75 = (char *)var_7(0,"  Maximum Ops per Instruction: %d\n",5);
          var_8(var_75,var_18 & 0xff);
        }
        var_18 = (type_7)linfo._20_4_ >> 0x10;
        var_75 = (char *)var_7(0,"  Initial value of \'is_stmt\':  %d\n",5);
        var_8(var_75,var_18 & 0xff);
        var_9 = linfo.li_line_base;
        var_75 = (char *)var_7(0,"  Line Base:                   %d\n",5);
        var_8(var_75,var_9);
        var_18 = linfo._28_4_ & 0xff;
        var_75 = (char *)var_7(0,"  Line Range:                  %d\n",5);
        var_8(var_75,var_18);
        var_18 = (type_7)linfo._28_4_ >> 8;
        var_75 = (char *)var_7(0,"  Opcode Base:                 %d\n",5);
        var_8(var_75,var_18 & 0xff);
        if (linfo.li_line_range == '\0') {
          var_75 = (char *)var_7(0,"Line range of 0 is invalid, using 1 instead\n",5);
          var_14(var_75);
          linfo.li_line_range = '\x01';
        }
        state_machine_regs.is_stmt = (type_7)linfo._20_4_ >> 0x10 & 0xff;
        state_machine_regs.address._0_4_ = 0;
        state_machine_regs.address._4_4_ = 0;
        state_machine_regs.address = 0;
        state_machine_regs.view = 0;
        state_machine_regs.file = 1;
        state_machine_regs.line = 1;
        state_machine_regs.column = 0;
        state_machine_regs.basic_block = 0;
        state_machine_regs.op_index = '\0';
        state_machine_regs.end_sequence = '\0';
        state_machine_regs.last_file_entry = 0;
        if (var_4 <= (type_6 *)(var_17 + ((type_7)linfo._28_4_ >> 8 & 0xff))) {
          var_75 = "Line Base extends beyond end of section\n";
          goto LAB_0005d6a3;
        }
        var_75 = (char *)var_7(0,"\n Opcodes:\n",5);
        var_8(var_75);
        var_18 = (type_7)linfo.li_opcode_base;
        if (1 < linfo.li_opcode_base) {
          var_9 = 1;
          do {
            var_33 = var_17[var_9 + -1];
            var_75 = (char *)var_19(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",
                                        (type_7)var_33,5);
            var_20 = var_9 + 1;
            var_8(var_75,var_9,(type_7)var_33);
            var_18 = (type_7)linfo._28_4_ >> 8 & 0xff;
            var_9 = var_20;
          } while (var_20 < (int)var_18);
        }
        var_28 = (type_6 *)(var_17 + (var_18 - 1));
        if (linfo.li_version < 5) {
          if ((type_8)var_28->li_length == 0) {
            var_21 = (type_6 *)((int)&var_28->li_length + 1);
            var_75 = (char *)var_7(0,"\n The Directory Table is empty.\n",5);
            var_8(var_75);
            if (*(type_8 *)((int)&var_28->li_length + 1) == 0) goto LAB_0005c013;
LAB_0005d01c:
            var_75 = (char *)var_7(0,"\n The File Name Table (offset 0x%lx):\n",5);
            var_8(var_75,(int)var_21 - (int)var_3);
            var_50 = (type_6 *)0x5;
            var_75 = (char *)var_7(0,"  Entry\tDir\tTime\tSize\tName\n",5);
            var_8(var_75);
            if ((var_21 < var_4) && (*(type_8 *)((int)&var_28->li_length + 1) != 0)) {
              var_28 = var_21;
              while( true ) {
                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;
                var_8("  %d\t",state_machine_regs.last_file_entry,var_50);
                var_23 = var_22((char *)var_28,(int)var_4 - (int)var_28);
                var_10 = (type_8 *)((int)&var_28->li_length + var_23 + 1);
                puVar35 = &var_27;
                in_stack_ffffff30 = var_4;
                var_39 = var_24(var_10,&var_27,0,(type_9 *)var_4);
                var_75 = var_25("u",var_26(puVar35) << 0x20,(type_7)var_39);
                var_8("%s\t");
                var_10 = var_10 + var_27;
                var_39 = var_24(var_10,&var_27,0,(type_9 *)var_4);
                var_75 = var_25("u",var_26(var_75) << 0x20,(type_7)var_39);
                var_8("%s\t");
                var_10 = var_10 + var_27;
                var_39 = var_24(var_10,&var_27,0,(type_9 *)var_4);
                var_75 = var_25("u",var_26(var_75) << 0x20,(type_7)var_39);
                var_8("%s\t",var_75);
                var_21 = (type_6 *)(var_10 + var_27);
                var_50 = var_28;
                var_8("%.*s\n",(int)var_4 - (int)var_28);
                if (var_4 == var_21) break;
                if ((var_4 <= var_21) || (var_28 = var_21, (type_8)var_21->li_length == 0))
                goto LAB_0005c031;
              }
              var_75 = (char *)var_7(0,"Corrupt file name table entry\n",5);
              var_14(var_75);
              var_21 = var_4;
            }
          }
          else {
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,"\n The Directory Table (offset 0x%lx):\n");
            var_8(var_75,(int)var_28 - (int)var_3);
            pdVar34 = extraout_ECX_02;
            if ((var_28 < var_4) && ((type_8)var_28->li_length != 0)) {
              var_9 = 0;
              do {
                var_9 = var_9 + 1;
                var_6 = (type_9 *)((int)var_4 - (int)var_28);
                in_stack_ffffff30 = var_28;
                var_8("  %d\t%.*s\n",var_9);
                var_23 = var_22((char *)var_28,(size_t)((int)var_4 - (int)var_28));
                var_28 = (type_6 *)((int)&var_28->li_length + var_23 + 1);
                pdVar34 = extraout_ECX_03;
                if (var_4 <= var_28) break;
              } while ((type_8)var_28->li_length != 0);
            }
            if ((type_6 *)((int)&var_4[-1].li_offset_size + 3) <= var_28) break;
            var_21 = (type_6 *)((int)&var_28->li_length + 1);
            if (*(type_8 *)((int)&var_28->li_length + 1) != 0) goto LAB_0005d01c;
LAB_0005c013:
            var_75 = (char *)var_7(0,"\n The File Name Table is empty.\n",5);
            var_8(var_75);
          }
LAB_0005c031:
          var_28 = (type_6 *)((int)&var_21->li_length + 1);
        }
        else {
          in_stack_ffffff30 = (type_6 *)0x5c6a1;
          var_29(line_str,file);
          var_75 = "Directory";
          var_21 = (type_6 *)0x5;
          pdVar34 = (type_1 *)0x0;
          var_28 = (type_6 *)var_7();
          var_30
                    ((type_9 *)&linfo.li_version,(type_9 *)&linfo.li_offset_size,(type_9 *)section,
                     var_28,pdVar34,var_75,var_21);
          var_75 = "File name";
          var_21 = (type_6 *)0x5;
          pdVar34 = (type_1 *)0x0;
          var_28 = (type_6 *)var_7();
          var_28 = (type_6 *)
                    var_30
                              ((type_9 *)&linfo.li_version,(type_9 *)&linfo.li_offset_size,
                               (type_9 *)section,var_28,pdVar34,var_75,var_21);
        }
        var_31(10,*(type_15 **)PTR_stdout_000b3fd8);
        saved_linfo_11144 = (type_10)linfo.li_length;
        DAT_000b7624 = linfo.li_length._4_4_;
        DAT_000b7628._0_2_ = linfo.li_version;
        DAT_000b7628._2_2_ = linfo._10_2_;
        DAT_000b762c = (type_10)linfo.li_prologue_length;
        DAT_000b7630 = linfo.li_prologue_length._4_4_;
        var_15._0_1_ = linfo.li_min_insn_length;
        var_15._1_1_ = linfo.li_max_ops_per_insn;
        var_15._2_1_ = linfo.li_default_is_stmt;
        var_15._3_1_ = linfo._23_1_;
        DAT_000b7638 = linfo.li_line_base;
        DAT_000b763c._0_1_ = linfo.li_line_range;
        DAT_000b763c._1_1_ = linfo.li_opcode_base;
        DAT_000b763c._2_2_ = linfo._30_2_;
        DAT_000b7640 = linfo.li_offset_size;
      }
      linfo.li_length._0_4_ = saved_linfo_11144;
      linfo.li_length._4_4_ = DAT_000b7624;
      linfo._8_4_ = DAT_000b7628;
      linfo.li_prologue_length._0_4_ = DAT_000b762c;
      linfo.li_prologue_length._4_4_ = DAT_000b7630;
      linfo._20_4_ = var_15;
      linfo.li_line_base = DAT_000b7638;
      linfo._28_4_ = DAT_000b763c;
      linfo.li_offset_size = DAT_000b7640;
      if (var_28 < var_32) {
        var_6 = (type_9 *)0x5;
        var_75 = (char *)var_7(0," Line Number Statements:\n");
        var_8(var_75);
        var_21 = var_28;
        if (var_28 < var_32) {
LAB_0005b6b6:
          var_18 = (int)var_21 - (int)var_3;
          var_8("  [0x%08lx]");
          var_39 = state_machine_regs.address;
          var_28 = (type_6 *)((int)&var_21->li_length + 1);
          var_33 = (type_8)var_21->li_length;
          if (linfo.li_opcode_base <= var_33) {
            var_33 = var_33 - linfo.li_opcode_base;
            var_35 = linfo._20_4_ & 0xff;
            var_37 = (type_7)(var_33 / linfo.li_line_range);
            if (linfo.li_max_ops_per_insn == '\x01') {
              var_34 = (type_16)var_37 * (type_16)var_35;
              var_35 = (type_7)var_34;
              state_machine_regs.address = var_34 + state_machine_regs.address;
              if (var_35 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = var_25("x",(type_16)var_18 << 0x20,(type_7)state_machine_regs.address)
              ;
              pcVar10 = var_25("u",(type_16)var_18 << 0x20,var_35);
              var_75 = "  Special opcode %d: advance Address by %s to 0x%s%s";
              __format = (char *)var_7(0,"  Special opcode %d: advance Address by %s to 0x%s%s",
                                           5);
              puVar33 = &DAT_0007bc55;
            }
            else {
              var_9 = var_36(state_machine_regs.op_index + var_37,
                                    var_38((type_7)state_machine_regs.op_index,var_37),
                                    linfo.li_max_ops_per_insn,0,local_54);
              puVar33 = local_54[0];
              var_35 = var_9 * var_35;
              state_machine_regs.address = var_39 + var_35;
              state_machine_regs.op_index = (type_9)local_54[0];
              if (var_35 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = var_25("x",(type_16)var_18 << 0x20,(type_7)state_machine_regs.address)
              ;
              pcVar10 = var_25("u",(type_16)var_18 << 0x20,var_37);
              __format = (char *)var_7(0,
                                           "  Special opcode %d: advance Address by %s to 0x%s[%d]%s"
                                           ,5);
              var_75 = "";
            }
            var_8(__format,(type_7)var_33,pcVar10,pcVar5,puVar33);
            var_18 = (type_7)(var_33 % linfo.li_line_range) + linfo.li_line_base;
            var_6 = (type_9 *)(state_machine_regs.line + var_18);
            state_machine_regs.line = (type_7)var_6;
            var_75 = var_25("d",var_26(var_75) << 0x20,var_18);
            pcVar5 = (char *)var_7(0," and Line by %s to %d",5);
            var_8(pcVar5,var_75);
            if (state_machine_regs.view == 0) goto LAB_0005bb80;
LAB_0005b679:
            var_18 = state_machine_regs.view;
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0," (view %u)\n");
            var_8(var_75,var_18);
LAB_0005b698:
            state_machine_regs.view = state_machine_regs.view + 1;
            goto LAB_0005b6a1;
          }
          switch(var_33) {
          case 0:
            in_stack_ffffff30 = (type_6 *)0x5bbb7;
            var_9 = var_40
                               ((type_9 *)var_28,(type_7)linfo._20_4_ >> 0x10 & 0xff,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_9);
            break;
          case 1:
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,"  Copy");
            var_8(var_75);
            if (state_machine_regs.view != 0) goto LAB_0005b679;
LAB_0005bb80:
            var_31(10,*(type_15 **)PTR_stdout_000b3fd8);
            goto LAB_0005b698;
          case 2:
            puVar35 = &var_27;
            in_stack_ffffff30 = var_4;
            var_41 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
            var_39 = state_machine_regs.address;
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            var_44 = (type_7)var_41;
            var_42 = (int)(var_41 >> 0x20);
            if (linfo.li_max_ops_per_insn == '\x01') {
              var_34 = (var_41 & 0xffffffff) * (type_16)(linfo._20_4_ & 0xff);
              var_18 = (type_7)var_34;
              var_9 = var_42 * (linfo._20_4_ & 0xff) + (int)((type_16)var_34 >> 0x20);
              state_machine_regs.address = state_machine_regs.address + var_43(var_9,var_18);
              if (var_9 != 0 || var_18 != 0) {
                state_machine_regs.view = 0;
              }
              pcVar5 = var_25("x",var_26(puVar35) << 0x20,(type_7)state_machine_regs.address);
              pcVar10 = var_25("u",var_26(puVar35) << 0x20,var_18);
              var_75 = "  Advance PC by %s to 0x%s%s\n";
              goto LAB_0005b8b1;
            }
            var_9 = var_36(state_machine_regs.op_index + var_44,
                                  var_42 +
                                  (type_7)var_38((type_7)state_machine_regs.op_index,var_44),
                                  linfo.li_max_ops_per_insn,0,local_54);
            puVar33 = local_54[0];
            var_18 = var_9 * (linfo._20_4_ & 0xff);
            state_machine_regs.address = var_39 + var_18;
            state_machine_regs.op_index = (type_9)local_54[0];
            if (var_18 != 0) {
              state_machine_regs.view = 0;
            }
            var_75 = var_25("x",var_26(puVar35) << 0x20,(type_7)state_machine_regs.address);
            pcVar5 = var_25("u",var_26(puVar35) << 0x20,var_44);
            var_6 = (type_9 *)0x5;
            pcVar10 = (char *)var_7(0,"  Advance PC by %s to 0x%s[%d]%s\n");
            var_8(pcVar10,pcVar5,var_75,puVar33,&DAT_0007bc55);
            break;
          case 3:
            puVar35 = &var_27;
            in_stack_ffffff30 = var_4;
            var_39 = var_24((type_9 *)var_28,puVar35,1,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            var_6 = (type_9 *)(state_machine_regs.line + (type_7)var_39);
            state_machine_regs.line = (type_7)var_6;
            var_75 = var_25("d",var_26(puVar35) << 0x20,(type_7)var_39);
            pcVar5 = (char *)var_7(0,"  Advance Line by %s to %d\n",5);
            var_8(pcVar5,var_75);
            break;
          case 4:
            puVar35 = &var_27;
            in_stack_ffffff30 = var_4;
            var_39 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            var_75 = var_25("d",var_26(puVar35) << 0x20,(type_7)var_39);
            var_6 = (type_9 *)0x5;
            pcVar5 = (char *)var_7(0,"  Set File Name to entry %s in the File Name Table\n");
            var_8(pcVar5,var_75);
            state_machine_regs.file = (type_7)var_39;
            break;
          case 5:
            puVar35 = &var_27;
            in_stack_ffffff30 = var_4;
            var_39 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            var_75 = var_25("u",var_26(puVar35) << 0x20,(type_7)var_39);
            var_6 = (type_9 *)0x5;
            pcVar5 = (char *)var_7(0,"  Set column to %s\n");
            var_8(pcVar5,var_75);
            state_machine_regs.column = (type_7)var_39;
            break;
          case 6:
            var_12 = state_machine_regs.is_stmt == 0;
            var_75 = var_25("d",(type_16)var_18 << 0x20,(type_7)var_12);
            var_6 = (type_9 *)0x5;
            pcVar5 = (char *)var_7(0,"  Set is_stmt to %s\n");
            var_8(pcVar5,var_75);
            state_machine_regs.is_stmt = (type_7)var_12;
            break;
          case 7:
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,"  Set basic block\n");
            var_8(var_75);
            state_machine_regs.basic_block = 1;
            break;
          case 8:
            if (linfo.li_max_ops_per_insn == '\0') {
                    /* WARNING: Does not return */
              pcVar2 = (type_3 *)var_45();
              (*pcVar2)();
            }
            var_35 = (int)((type_16)(type_8)~linfo.li_opcode_base /
                          (type_16)(type_2)(int)(linfo._28_4_ & 0xff)) * (linfo._20_4_ & 0xff);
            state_machine_regs.address = state_machine_regs.address + var_35;
            if (var_35 != 0) {
              state_machine_regs.view = 0;
            }
            pcVar5 = var_25("x",(type_16)var_18 << 0x20,(type_7)state_machine_regs.address);
            pcVar10 = var_25("u",(type_16)var_18 << 0x20,var_35);
            var_75 = "  Advance PC by constant %s to 0x%s%s\n";
LAB_0005b8b1:
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,var_75);
            var_8(var_75,pcVar10,pcVar5,&DAT_0007bc55);
            break;
          case 9:
            var_21 = (type_6 *)((int)&var_21->li_length + 3);
            if (var_21 < var_4) {
              var_35 = 2;
LAB_0005d4cd:
              var_46 = (*byte_get)((type_9 *)var_28,var_35);
              var_18 = var_35;
            }
            else {
              var_46 = 0;
              if ((var_28 < var_4) && (var_35 = (int)var_4 - (int)var_28, var_46 = 0, var_35 - 1 < 8))
              goto LAB_0005d4cd;
            }
            state_machine_regs.address = var_46 + state_machine_regs.address;
            state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
            var_6 =
                 (type_9 *)var_25("x",(type_16)var_18 << 0x20,
                                         (type_7)state_machine_regs.address);
            var_75 = var_25("u",(type_16)var_18 << 0x20,(type_7)var_46);
            pcVar5 = (char *)var_7(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);
            var_8(pcVar5,var_75);
            var_28 = var_21;
            break;
          case 10:
            var_75 = "  Set prologue_end to true\n";
            goto LAB_0005b70b;
          case 0xb:
            var_75 = "  Set epilogue_begin to true\n";
LAB_0005b70b:
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,var_75);
            var_8(var_75);
            var_21 = var_28;
            if (var_32 <= var_28) goto LAB_0005b730;
            goto LAB_0005b6b6;
          case 0xc:
            puVar35 = &var_27;
            in_stack_ffffff30 = var_4;
            var_39 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            var_75 = var_25("u",var_26(puVar35) << 0x20,(type_7)var_39);
            var_6 = (type_9 *)0x5;
            pcVar5 = (char *)var_7(0,"  Set ISA to %s\n");
            var_8(pcVar5,var_75);
            break;
          default:
            var_6 = (type_9 *)0x5;
            var_75 = (char *)var_7(0,"  Unknown opcode %d with operands: ");
            var_8(var_75,(type_7)var_33);
            if ((var_17 != (type_9 *)0x0) && (var_18 = (type_7)var_17[var_33 - 1], var_18 != 0)) {
              puVar35 = &var_27;
              for (; var_18 != 1; var_18 = var_18 - 1) {
                puVar36 = puVar35;
                var_39 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
                var_75 = var_25("x",var_26(puVar36) << 0x20,(type_7)var_39);
                var_8("0x%s%s",var_75,&DAT_0007c4b1);
                var_28 = (type_6 *)((int)&var_28->li_length + var_27);
              }
              in_stack_ffffff30 = var_4;
              var_39 = var_24((type_9 *)var_28,puVar35,0,(type_9 *)var_4);
              var_75 = var_25("x",var_26(puVar35) << 0x20,(type_7)var_39);
              var_6 = "";
              var_8("0x%s%s",var_75);
              var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            }
            var_31(10,*(type_15 **)puVar3);
          }
LAB_0005b6a1:
          var_21 = var_28;
          if (var_32 <= var_28) goto LAB_0005b730;
          goto LAB_0005b6b6;
        }
LAB_0005b730:
        var_31(10,*(type_15 **)PTR_stdout_000b3fd8);
        var_12 = var_4 < var_28;
        bVar26 = var_4 == var_28;
        pdVar34 = extraout_ECX_00;
        if (var_4 <= var_28) break;
        goto LAB_0005b368;
      }
      var_6 = (type_9 *)0x5;
      var_75 = (char *)var_7(0," No Line Number Statements.\n");
      var_8(var_75);
      var_12 = var_4 < var_28;
      bVar26 = var_4 == var_28;
      pdVar34 = extraout_ECX;
    } while (var_28 < var_4);
    uVar25 = 0;
    uVar27 = (var_1 & 2U) == 0;
    if (!(bool)uVar27) {
      var_28 = (type_6 *)0x5b772;
      var_2((type_1 *)section->name,(bfd_boolean)&section->filename,pdVar34);
      local_58 = 1;
LAB_0005a9d0:
      do {
        var_47 = ".debug_line.";
        var_9 = 0xc;
        var_10 = (type_8 *)section->name;
        do {
          if (var_9 == 0) break;
          var_9 = var_9 + -1;
          uVar25 = *var_10 < (type_8)*var_47;
          uVar27 = *var_10 == *var_47;
          var_10 = var_10 + (type_7)bVar28 * -2 + 1;
          var_47 = (char *)((type_8 *)var_47 + (type_7)bVar28 * -2 + 1);
        } while ((bool)uVar27);
        var_12 = false;
        bVar26 = (!(bool)uVar25 && !(bool)uVar27) == (bool)uVar25;
        if (bVar26) {
          var_9 = 0x10;
          var_10 = (type_8 *)section->name;
          var_11 = (type_8 *)".debug_line.dwo";
          do {
            if (var_9 == 0) break;
            var_9 = var_9 + -1;
            var_12 = *var_10 < *var_11;
            bVar26 = *var_10 == *var_11;
            var_10 = var_10 + (type_7)bVar28 * -2 + 1;
            var_11 = var_11 + (type_7)bVar28 * -2 + 1;
          } while (bVar26);
          if ((!var_12 && !bVar26) == var_12) goto LAB_0005c150;
          linfo.li_offset_size = DAT_000b7600;
          linfo.li_length._0_4_ = saved_linfo_11206;
          linfo.li_length._4_4_ = DAT_000b75e4;
          linfo.li_version = (type_5)DAT_000b75e8;
          linfo._10_2_ = DAT_000b75e8._2_2_;
          linfo.li_prologue_length._0_4_ = DAT_000b75ec;
          linfo.li_prologue_length._4_4_ = DAT_000b75f0;
          linfo._20_4_ = var_48;
          linfo.li_line_base = DAT_000b75f8;
          linfo.li_line_range = (type_9)DAT_000b75fc;
          linfo.li_opcode_base = DAT_000b75fc._1_1_;
          linfo._30_2_ = DAT_000b75fc._2_2_;
          if ((type_9)DAT_000b75fc == '\0') {
            var_32 = (type_9 *)var_4;
            var_75 = (char *)var_7(0,
                                       "Partial .debug_line. section encountered without a prior full .debug_line section\n"
                                       ,5);
            var_14(var_75);
            var_39 = state_machine_regs.address;
            goto LAB_0005d718;
          }
          state_machine_regs.is_stmt = var_48 >> 0x10 & 0xff;
          state_machine_regs.address._0_4_ = 0;
          state_machine_regs.op_index = '\0';
          state_machine_regs.end_sequence = '\0';
          state_machine_regs.address._4_4_ = 0;
          state_machine_regs.view = 0;
          state_machine_regs.file = 1;
          state_machine_regs.line = 1;
          state_machine_regs.column = 0;
          state_machine_regs.basic_block = 0;
          state_machine_regs.last_file_entry = 0;
          local_b4 = 0;
          var_65 = (type_10 *)0x0;
          var_17 = (type_9 *)0x0;
          var_72 = (type_6 *)0x0;
          var_49 = (type_9 *)0x0;
          var_21 = var_3;
          var_32 = (type_9 *)var_4;
          if (var_3 < var_4) goto LAB_0005ab5e;
        }
        else {
LAB_0005c150:
          var_49 = var_16
                               ((type_1 *)&linfo,(type_9 *)&var_32,var_6,
                                var_28,in_stack_ffffff34);
          var_39 = state_machine_regs.address;
          if (var_49 == (type_9 *)0x0) {
LAB_0005d718:
            state_machine_regs.address._4_4_ = (type_10)(var_39 >> 0x20);
            state_machine_regs.address._0_4_ = (type_10)var_39;
            return 0;
          }
          if (linfo.li_line_range == '\0') {
            var_75 = (char *)var_7(0,"Line range of 0 is invalid, using 1 instead\n",5);
            var_14(var_75);
            linfo.li_line_range = '\x01';
          }
          state_machine_regs.is_stmt = (type_7)linfo._20_4_ >> 0x10 & 0xff;
          state_machine_regs.address._0_4_ = 0;
          state_machine_regs.op_index = '\0';
          state_machine_regs.end_sequence = '\0';
          var_18 = (type_7)linfo._28_4_ >> 8 & 0xff;
          state_machine_regs.address._4_4_ = 0;
          var_21 = (type_6 *)(var_49 + (var_18 - 1));
          state_machine_regs.view = 0;
          state_machine_regs.file = 1;
          state_machine_regs.line = 1;
          state_machine_regs.column = 0;
          state_machine_regs.basic_block = 0;
          state_machine_regs.last_file_entry = 0;
          if (var_4 <= var_21) {
            var_75 = (char *)var_7(0,"opcode base of %d extends beyond end of section\n",5);
            var_14(var_75,var_18);
            var_39 = var_43(state_machine_regs.address._4_4_,
                              (type_10)state_machine_regs.address);
            goto LAB_0005d718;
          }
          if (4 < linfo.li_version) {
            var_29(line_str,file);
            var_50 = (type_6 *)(var_49 + var_18);
            var_28 = var_50;
            if (var_50 < var_4) {
              var_9 = 1;
LAB_0005d415:
              var_46 = (*byte_get)((type_9 *)var_21,var_9);
              var_44 = (type_7)var_46 & 0xff;
              if ((var_46 & 0xff) != 0) {
                var_9 = 0;
                var_18 = 0;
                do {
                  var_24((type_9 *)var_28,&var_27,0,(type_9 *)var_4);
                  var_10 = (type_8 *)((int)&var_28->li_length + var_27);
                  var_24(var_10,&var_27,0,(type_9 *)var_4);
                  var_28 = (type_6 *)(var_10 + var_27);
                  var_12 = 0xfffffffe < var_18;
                  var_18 = var_18 + 1;
                  var_9 = var_9 + (type_7)var_12;
                } while (var_9 != 0 || var_44 != var_18);
              }
            }
            else {
              var_9 = (int)var_4 - (int)var_21;
              if (var_9 - 1U < 8) goto LAB_0005d415;
              var_44 = 0;
            }
            var_3 = (type_6 *)&var_27;
            var_39 = var_24((type_9 *)var_28,(type_7 *)var_3,0,(type_9 *)var_4);
            var_28 = (type_6 *)((int)&var_28->li_length + var_27);
            if (var_4 == var_28) {
              var_75 = "Corrupt directories list\n";
            }
            else {
              local_b4._0_4_ = (type_9 *)var_39;
              local_b4._4_4_ = (type_7)(var_39 >> 0x20);
              var_65 = (type_10 *)var_51((int)(type_9 *)local_b4 << 2);
              if (local_b4._4_4_ != 0 || (type_9 *)local_b4 != (type_9 *)0x0) {
                var_57 = (type_6 *)0x0;
                var_58 = 0;
                do {
                  if (var_44 != 0) {
                    var_17 = (type_9 *)0x0;
                    var_72 = var_50;
                    do {
                      var_41 = var_24((type_9 *)var_72,(type_7 *)var_3,0,(type_9 *)var_4);
                      var_10 = (type_8 *)((int)&var_72->li_length + var_27);
                      var_52 = var_24(var_10,(type_7 *)var_3,0,(type_9 *)var_4);
                      var_18 = linfo.li_offset_size;
                      var_72 = (type_6 *)(var_10 + var_27);
                      if (var_4 == var_28) {
                        var_75 = (char *)var_7(0,"Corrupt directories list\n",5);
                        var_14(var_75);
                        goto LAB_0005c9e0;
                      }
                      if (var_41 == 1) {
                        if (var_52 == 8) {
                          var_65[(int)var_57] = var_28;
                        }
                        else if (var_52 == 0x1f) {
                          if (linfo.li_offset_size < 9) {
                            if ((type_6 *)
                                ((int)&var_28->li_length + linfo.li_offset_size) < var_4) {
LAB_0005c92c:
                              if (var_18 - 1 < 8) goto LAB_0005c934;
                            }
                            else {
LAB_0005c920:
                              if (var_28 < var_4) {
                                var_18 = (int)var_4 - (int)var_28;
                                goto LAB_0005c92c;
                              }
                            }
                          }
                          else {
                            var_75 = (char *)var_19(0,
                                                  "internal error: attempt to read %d byte of data in to %d sized variable"
                                                  ,
                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"
                                                  ,linfo.li_offset_size,5);
                            var_53(var_75,var_18,8);
                            if (var_4 <= &var_28->li_version) goto LAB_0005c920;
                            var_18 = 8;
LAB_0005c934:
                            (*byte_get)((type_9 *)var_28,var_18);
                          }
                          var_70 = var_54
                                              (var_43(in_stack_ffffff38,in_stack_ffffff34));
                          var_65[(int)var_57] = var_70;
                        }
                      }
                      var_28 = (type_6 *)
                                var_55
                                          (0,(type_17)var_52,0,(type_9 *)var_28,(type_9 *)var_4,0,0,
                                           (type_16)linfo.li_offset_size,linfo._8_4_ & 0xffff,
                                           (type_18 *)0x0,1,section,(type_19 *)0x0,'\t');
                      var_17 = (type_9 *)((int)var_17 + 1);
                    } while ((type_9 *)var_44 != var_17);
                  }
                  if (var_4 == var_28) {
LAB_0005c9e0:
                    var_75 = (char *)var_7(0,"Corrupt directories list\n",5);
                    var_14(var_75);
                    var_56 = (type_6 *)((int)&var_28->li_length + 1);
                    if (var_56 < var_4) goto LAB_0005ca09;
                    goto LAB_0005ccd9;
                  }
                  var_12 = 0xfffffffe < var_57;
                  var_57 = (type_6 *)((int)var_57 + 1);
                  var_58 = var_58 + (type_7)var_12;
                } while (local_b4._4_4_ != var_58 ||
                         (type_6 *)(type_9 *)local_b4 != var_57);
              }
              var_56 = (type_6 *)((int)&var_28->li_length + 1);
              if (var_56 < var_4) {
LAB_0005ca09:
                var_9 = 1;
LAB_0005ca0e:
                var_46 = (*byte_get)((type_9 *)var_28,var_9);
                var_59 = (type_7)var_46 & 0xff;
                var_21 = var_56;
                if ((var_46 & 0xff) != 0) {
                  var_9 = 0;
                  var_18 = 0;
                  do {
                    var_24((type_9 *)var_21,(type_7 *)var_3,0,(type_9 *)var_4);
                    var_10 = (type_8 *)((int)&var_21->li_length + var_27);
                    var_24(var_10,(type_7 *)var_3,0,(type_9 *)var_4);
                    var_21 = (type_6 *)(var_10 + var_27);
                    var_12 = 0xfffffffe < var_18;
                    var_18 = var_18 + 1;
                    var_9 = var_9 + (type_7)var_12;
                  } while (var_9 != 0 || var_59 != var_18);
                }
              }
              else {
                if ((var_28 < var_4) && (var_9 = (int)var_4 - (int)var_28, var_9 - 1U < 8))
                goto LAB_0005ca0e;
LAB_0005ccd9:
                var_59 = 0;
                var_21 = var_56;
              }
              var_28 = var_4;
              var_41 = var_24((type_9 *)var_21,(type_7 *)var_3,0,(type_9 *)var_4);
              var_17 = (type_9 *)var_41;
              var_21 = (type_6 *)((int)&var_21->li_length + var_27);
              if (var_4 != var_21) {
                var_75 = (char *)((int)var_17 << 4);
                var_72 = (type_6 *)var_60(1,(size_t)var_75);
                local_b4 = var_39;
                if (var_17 == (type_9 *)0x0) goto LAB_0005cd50;
                var_63 = (type_10 *)((int)var_72 + 4);
                var_62 = (type_9 *)0x0;
                do {
                  if (var_59 != 0) {
                    var_61 = 0;
                    var_57 = var_56;
                    do {
                      var_28 = var_4;
                      var_39 = var_24((type_9 *)var_57,(type_7 *)var_3,0,(type_9 *)var_4);
                      var_10 = (type_8 *)((int)&var_57->li_length + var_27);
                      var_41 = var_24(var_10,(type_7 *)var_3,0,(type_9 *)var_4);
                      var_18 = linfo.li_offset_size;
                      var_57 = (type_6 *)(var_10 + var_27);
                      if (var_4 == var_21) {
                        var_75 = (char *)var_7(0,"Corrupt file name list\n",5);
                        var_14(var_75);
                        goto LAB_0005cd30;
                      }
                      if (var_39 == 1) {
                        if (var_41 == 8) {
                          var_63[-1] = var_21;
                        }
                        else if (var_41 == 0x1f) {
                          if (linfo.li_offset_size < 9) {
                            if ((type_6 *)
                                ((int)&var_21->li_length + linfo.li_offset_size) < var_4) {
LAB_0005cc49:
                              if (var_18 - 1 < 8) goto LAB_0005cc55;
                            }
                            else {
LAB_0005cc3d:
                              if (var_21 < var_4) {
                                var_18 = (int)var_4 - (int)var_21;
                                goto LAB_0005cc49;
                              }
                            }
                          }
                          else {
                            var_75 = (char *)var_19(0,
                                                  "internal error: attempt to read %d byte of data in to %d sized variable"
                                                  ,
                                                  "internal error: attempt to read %d bytes of data in to %d sized variable"
                                                  ,linfo.li_offset_size,5);
                            var_53(var_75,var_18,8);
                            if (var_4 <= &var_21->li_version) goto LAB_0005cc3d;
                            var_18 = 8;
LAB_0005cc55:
                            (*byte_get)((type_9 *)var_21,var_18);
                          }
                          var_70 = var_54
                                              (var_43(in_stack_ffffff38,in_stack_ffffff34));
                          var_63[-1] = var_70;
                        }
                      }
                      else if (var_39 == 2) {
                        if (var_41 == 0xb) {
                          if ((type_6 *)((int)&var_21->li_length + 1U) < var_4) {
                            var_9 = 1;
                          }
                          else if ((var_4 <= var_21) ||
                                  (var_9 = (int)var_4 - (int)var_21, 7 < var_9 - 1U)) {
LAB_0005ce4f:
                            *var_63 = 0;
                            goto LAB_0005cb51;
                          }
                          var_46 = (*byte_get)((type_9 *)var_21,var_9);
                          *var_63 = (int)var_46;
                        }
                        else if (var_41 == 0xf) {
                          var_39 = var_24((type_9 *)var_21,(type_7 *)0x0,0,(type_9 *)var_4);
                          *var_63 = (int)var_39;
                        }
                        else if (var_41 == 5) {
                          if ((type_6 *)((int)&var_21->li_length + 2U) < var_4) {
                            var_9 = 2;
                          }
                          else if ((var_4 <= var_21) ||
                                  (var_9 = (int)var_4 - (int)var_21, 7 < var_9 - 1U))
                          goto LAB_0005ce4f;
                          var_46 = (*byte_get)((type_9 *)var_21,var_9);
                          *var_63 = (int)var_46;
                        }
                      }
LAB_0005cb51:
                      var_28 = (type_6 *)0x9;
                      var_75 = (char *)section;
                      var_21 = (type_6 *)
                                var_55
                                          (0,(type_17)var_41,0,(type_9 *)var_21,(type_9 *)var_4,0,0,
                                           (type_16)linfo.li_offset_size,linfo._8_4_ & 0xffff,
                                           (type_18 *)0x0,1,section,(type_19 *)0x0,'\t');
                      var_61 = var_61 + 1;
                    } while (var_59 != var_61);
                  }
                  if (var_4 == var_21) {
LAB_0005cd30:
                    var_75 = "Corrupt file name list\n";
                    pcVar5 = (char *)var_7(0,"Corrupt file name list\n",5);
                    var_14(pcVar5);
                    goto LAB_0005cd50;
                  }
                  var_62 = var_62 + 1;
                  var_63 = var_63 + 4;
                } while (var_62 != var_17);
                var_18 = *(type_7 *)((int)var_72 + 4);
                if (var_18 != 0) goto LAB_0005cdc0;
LAB_0005cd5b:
                uVar21 = *(type_10 *)var_72;
                var_75 = ".";
LAB_0005cd63:
                pcVar5 = (char *)var_7(0,"CU: %s/%s:\n",5);
                var_8(pcVar5,var_75,uVar21);
                goto LAB_0005c27f;
              }
              var_75 = "Corrupt file name list\n";
            }
LAB_0005c678:
            var_75 = (char *)var_7(0,var_75,5);
            var_14(var_75);
            var_39 = var_43(state_machine_regs.address._4_4_,
                              (type_10)state_machine_regs.address);
            goto LAB_0005adf9;
          }
          local_b4 = 0;
          var_65 = (type_10 *)0x0;
          var_50 = var_21;
          if ((type_8)var_21->li_length != 0) {
            var_9 = 0;
            var_18 = 0;
            do {
              var_23 = var_22((char *)var_50,(int)var_4 - (int)var_50);
              var_12 = 0xfffffffe < var_18;
              var_18 = var_18 + 1;
              var_50 = (type_6 *)((int)&var_50->li_length + var_23 + 1);
              var_9 = var_9 + (type_7)var_12;
              if (var_4 <= var_50) {
                var_75 = "directory table ends unexpectedly\n";
                goto LAB_0005c678;
              }
            } while ((type_8)var_50->li_length != 0);
            local_b4 = var_43(var_9,var_18);
            var_65 = (type_10 *)var_51(var_18 * 4);
            var_33 = (type_8)var_21->li_length;
            var_63 = var_65;
            while (var_33 != 0) {
              *var_63 = var_21;
              var_63 = var_63 + 1;
              var_23 = var_22((char *)var_21,(int)var_21 - (int)var_4);
              var_21 = (type_6 *)((int)&var_21->li_length + var_23 + 1);
              var_33 = (type_8)var_21->li_length;
            }
          }
          var_21 = (type_6 *)((int)&var_50->li_length + 1);
          if ((var_21 < var_4) && (*(type_8 *)((int)&var_50->li_length + 1) != 0)) {
            var_17 = (type_9 *)0x0;
            var_64 = var_21;
            do {
              var_23 = var_22((char *)var_64,(int)var_4 - (int)var_64);
              var_10 = (type_8 *)((int)&var_64->li_length + var_23 + 1);
              var_24(var_10,&var_27,0,(type_9 *)var_4);
              var_10 = var_10 + var_27;
              var_24(var_10,&var_27,0,(type_9 *)var_4);
              var_10 = var_10 + var_27;
              var_75 = (char *)&var_27;
              var_28 = var_4;
              var_24(var_10,&var_27,0,(type_9 *)var_4);
              var_64 = (type_6 *)(var_10 + var_27);
              var_17 = var_17 + 1;
              if (var_4 <= var_64) {
                var_75 = "file table ends unexpectedly\n";
                goto LAB_0005c678;
              }
            } while ((type_8)var_64->li_length != 0);
            var_72 = (type_6 *)var_51((int)var_17 * 0x10);
            var_33 = *(type_8 *)((int)&var_50->li_length + 1);
            var_63 = (type_10 *)var_72;
            while (var_33 != 0) {
              *var_63 = var_21;
              var_23 = var_22((char *)var_21,(int)var_4 - (int)var_21);
              var_10 = (type_8 *)((int)&var_21->li_length + var_23 + 1);
              var_39 = var_24(var_10,&var_27,0,(type_9 *)var_4);
              var_10 = var_10 + var_27;
              var_63[1] = (int)var_39;
              var_39 = var_24(var_10,&var_27,0,(type_9 *)var_4);
              var_10 = var_10 + var_27;
              var_63[2] = (int)var_39;
              var_75 = (char *)&var_27;
              var_28 = var_4;
              var_39 = var_24(var_10,(type_7 *)&var_27,0,(type_9 *)var_4);
              var_21 = (type_6 *)(var_10 + var_27);
              var_63[3] = (int)var_39;
              var_63 = var_63 + 4;
              var_33 = (type_8)var_21->li_length;
            }
            var_21 = (type_6 *)((int)&var_64->li_length + 1);
            if (var_65 == (type_10 *)0x0) {
              uVar21 = *(type_10 *)var_72;
              var_75 = (char *)var_7(0,"CU: %s:\n",5);
              var_8(var_75,uVar21);
            }
            else {
LAB_0005cd50:
              var_18 = *(type_7 *)((int)var_72 + 4);
              if (var_18 == 0) goto LAB_0005cd5b;
LAB_0005cdc0:
              if (local_b4._4_4_ == 0 && (type_9 *)local_b4 == (type_9 *)0x0) {
                var_75 = "<unknown>";
LAB_0005d3fb:
                var_75 = (char *)var_7(0,var_75,5);
              }
              else {
                if (local_b4._4_4_ < ((type_9 *)local_b4 < var_18)) {
                  var_75 = var_25("u",var_26(var_75) << 0x20,(type_7)(type_9 *)local_b4);
                  pcVar5 = (char *)var_7(0,"directory index %u > number of directories %s\n",5);
                  var_14(pcVar5,var_18,var_75);
                  var_75 = "<corrupt>";
                  goto LAB_0005d3fb;
                }
                var_75 = (char *)var_65[var_18 - 1];
              }
              uVar21 = *(type_10 *)var_72;
              if ((var_66 != 0) || (var_23 = var_67(var_75), var_23 < 0x4c)) goto LAB_0005cd63;
              var_8("%s:\n",uVar21);
            }
          }
          else {
            var_17 = (type_9 *)0x0;
            var_21 = (type_6 *)((int)&var_50->li_length + 2);
            var_72 = (type_6 *)0x0;
          }
LAB_0005c27f:
          var_6 = (type_9 *)0x5;
          var_75 = (char *)var_7(0,
                                     "File name                            Line number    Starting address    View\n"
                                    );
          var_8(var_75);
          saved_linfo_11206 = (type_10)linfo.li_length;
          DAT_000b75e4 = linfo.li_length._4_4_;
          DAT_000b75e8._0_2_ = linfo.li_version;
          DAT_000b75e8._2_2_ = linfo._10_2_;
          DAT_000b75ec = (type_10)linfo.li_prologue_length;
          DAT_000b75f0 = linfo.li_prologue_length._4_4_;
          var_48._0_1_ = linfo.li_min_insn_length;
          var_48._1_1_ = linfo.li_max_ops_per_insn;
          var_48._2_1_ = linfo.li_default_is_stmt;
          var_48._3_1_ = linfo._23_1_;
          DAT_000b75f8 = linfo.li_line_base;
          DAT_000b75fc._0_1_ = linfo.li_line_range;
          DAT_000b75fc._1_1_ = linfo.li_opcode_base;
          DAT_000b75fc._2_2_ = linfo._30_2_;
          DAT_000b7600 = linfo.li_offset_size;
          if (var_21 < var_32) {
LAB_0005ab5e:
            var_57 = (type_6 *)PTR_stdout_000b3fd8;
            var_39 = var_43(state_machine_regs.address._4_4_,
                              (type_10)state_machine_regs.address);
            var_3 = var_21;
            linfo.li_length._0_4_ = saved_linfo_11206;
            linfo.li_length._4_4_ = DAT_000b75e4;
            linfo._8_4_ = DAT_000b75e8;
            linfo.li_prologue_length._0_4_ = DAT_000b75ec;
            linfo.li_prologue_length._4_4_ = DAT_000b75f0;
            linfo._20_4_ = var_48;
            linfo.li_line_base = DAT_000b75f8;
            linfo._28_4_ = DAT_000b75fc;
            linfo.li_offset_size = DAT_000b7600;
LAB_0005ad11:
            var_21 = (type_6 *)((int)&var_3->li_length + 1);
            var_33 = (type_8)var_3->li_length;
            var_18 = (type_7)var_33;
            if (linfo.li_opcode_base <= var_33) {
              var_68 = (type_5)var_33 - (type_5)linfo.li_opcode_base & 0xff;
              var_33 = (type_8)(var_68 % (type_5)linfo.li_line_range);
              var_35 = var_69(var_33,(char)(var_68 / linfo.li_line_range)) & 0xff;
              if (linfo.li_max_ops_per_insn != '\x01') {
                var_37 = state_machine_regs.op_index + var_35;
                var_35 = var_37 / linfo.li_max_ops_per_insn;
                local_88 = (type_9)(var_37 % (type_7)linfo.li_max_ops_per_insn);
                state_machine_regs.op_index = local_88;
              }
              var_35 = var_35 * (linfo._20_4_ & 0xff);
              state_machine_regs.address = var_39 + var_35;
              if (var_35 != 0) {
                state_machine_regs.view = 0;
              }
              state_machine_regs.line = state_machine_regs.line + (type_7)var_33 + linfo.li_line_base;
              var_3 = var_21;
              goto joined_r0x0005af93;
            }
            state_machine_regs.address = var_39;
            switch(var_18) {
            case 0:
              var_6 = (type_9 *)0x0;
              var_28 = (type_6 *)var_32;
              var_39 = var_24((type_9 *)var_21,&var_27,0,var_32);
              var_70 = (type_9 *)var_39;
              if (var_70 == (type_9 *)0x0) {
                var_6 = (type_9 *)0x5;
                var_75 = (char *)var_7(0,"Badly formed extended line op encountered!\n");
                var_14(var_75);
                var_3 = var_21;
                var_39 = state_machine_regs.address;
                break;
              }
              var_10 = (type_8 *)((int)&var_21->li_length + var_27);
              var_3 = (type_6 *)
                         (var_70 + var_27 + (int)&var_21->li_length);
              var_21 = (type_6 *)(var_10 + 1);
              var_18 = (type_7)*var_10;
              switch(var_18) {
              default:
                var_75 = (char *)var_7(0,"UNKNOWN (%u): length %d\n",5);
                var_8(var_75,var_18);
                var_6 = var_70;
              case 1:
              case 4:
              case 0x16:
                var_39 = state_machine_regs.address;
                if (var_18 != 1) break;
                var_18 = 0xffffffff;
                goto joined_r0x0005af93;
              case 2:
                var_70 = var_70 + -1;
                if (var_70 < (type_9 *)0x9) {
                  if (var_3 < var_4) {
LAB_0005b20c:
                    if (var_70 + -1 < (type_9 *)0x8) goto LAB_0005b218;
                  }
                  else {
LAB_0005b1f6:
                    if (var_21 < var_4) {
                      var_70 = (type_9 *)((int)var_4 - (int)var_21);
                      goto LAB_0005b20c;
                    }
                  }
                  var_39 = 0;
                }
                else {
                  var_75 = (char *)var_19(0,
                                              "internal error: attempt to read %d byte of data in to %d sized variable"
                                              ,
                                              "internal error: attempt to read %d bytes of data in to %d sized variable"
                                              ,var_70,5);
                  var_6 = (type_9 *)0x8;
                  var_53(var_75,var_70);
                  if (var_4 <= (type_6 *)(var_10 + 9)) goto LAB_0005b1f6;
                  var_70 = (type_9 *)0x8;
LAB_0005b218:
                  var_39 = (*byte_get)((type_9 *)var_21,(int)var_70);
                }
                state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
                state_machine_regs.view = 0;
                break;
              case 3:
                var_17 = var_17 + 1;
                var_72 = (type_6 *)var_71(var_72,(int)var_17 * 0x10);
                state_machine_regs.last_file_entry = state_machine_regs.last_file_entry + 1;
                var_63 = (type_10 *)((int)var_72 + ((int)var_17 * 4 + -4) * 4);
                *var_63 = var_21;
                var_23 = var_67((char *)var_21);
                var_10 = var_10 + var_23 + 2;
                var_39 = var_24(var_10,&var_27,0,var_32);
                var_63[1] = (int)var_39;
                var_10 = var_10 + var_27;
                var_39 = var_24(var_10,&var_27,0,var_32);
                var_63[2] = (int)var_39;
                var_6 = (type_9 *)0x0;
                var_28 = (type_6 *)var_32;
                var_39 = var_24(var_10 + var_27,&var_27,0,var_32);
                var_63[3] = (int)var_39;
                var_39 = state_machine_regs.address;
              }
              break;
            case 1:
            case 10:
            case 0xb:
              goto _L2741;
            case 2:
              var_6 = (type_9 *)0x0;
              var_28 = var_4;
              var_39 = var_24((type_9 *)var_21,&var_27,0,(type_9 *)var_4);
              var_9 = (int)var_39;
              var_3 = (type_6 *)((int)&var_21->li_length + var_27);
              if (linfo.li_max_ops_per_insn != '\x01') {
                var_35 = (var_9 + (type_7)state_machine_regs.op_index) /
                         (type_7)linfo.li_max_ops_per_insn;
                uVar14 = (type_9)((var_9 + (type_7)state_machine_regs.op_index) %
                                (type_7)linfo.li_max_ops_per_insn);
                var_18 = linfo._20_4_ & 0xff;
                goto LAB_0005ae5c;
              }
              var_18 = linfo._20_4_ & 0xff;
LAB_0005c370:
              var_18 = var_9 * var_18;
              var_41 = state_machine_regs.address + var_18;
              var_39 = state_machine_regs.address + var_18;
              if (var_18 == 0) break;
LAB_0005ae7e:
              state_machine_regs.view = 0;
              var_39 = var_41;
              break;
            case 3:
              var_6 = (type_9 *)0x1;
              var_28 = var_4;
              var_39 = var_24((type_9 *)var_21,&var_27,1,(type_9 *)var_4);
              state_machine_regs.line = state_machine_regs.line + (int)var_39;
              var_3 = (type_6 *)((int)&var_21->li_length + var_27);
              var_39 = state_machine_regs.address;
              break;
            case 4:
              var_6 = (type_9 *)0x0;
              puVar35 = &var_27;
              var_28 = var_4;
              var_39 = var_24((type_9 *)var_21,puVar35,0,(type_9 *)var_4);
              var_18 = (type_7)var_39;
              var_3 = (type_6 *)((int)&var_21->li_length + var_27);
              var_70 = (type_9 *)(var_18 - 1);
              state_machine_regs.file = var_18;
              if ((var_72 == (type_6 *)0x0) || (var_17 == (type_9 *)0x0)) {
                var_75 = "\n [Use file table entry %d]\n";
              }
              else {
                if (var_70 < var_17) {
                  var_63 = (type_10 *)((int)var_72 + (int)var_70 * 4 * 4);
                  var_70 = (type_9 *)var_63[1];
                  if (var_70 == (type_9 *)0x0) {
                    var_8("\n./%s:[++]\n",*var_63);
                    var_39 = state_machine_regs.address;
                  }
                  else if ((var_65 == (type_10 *)0x0) ||
                          ((type_9 *)local_b4 == (type_9 *)0x0 && local_b4._4_4_ == 0)) {
                    uVar21 = *var_63;
                    var_75 = (char *)var_7(0,"\n [Use file %s in directory table entry %d]\n",5)
                    ;
                    var_8(var_75,uVar21);
                    var_6 = var_70;
                    var_39 = state_machine_regs.address;
                  }
                  else {
                    if (local_b4._4_4_ < ((type_9 *)local_b4 < var_70)) {
                      var_75 = var_25("u",var_26(puVar35) << 0x20,(type_7)(type_9 *)local_b4);
                      pcVar5 = (char *)var_7(0,"directory index %u > number of directories %s\n"
                                                 ,5);
                      var_14(pcVar5,var_70,var_75);
                      var_75 = "\n <over large directory table entry %u>\n";
                      goto LAB_0005b184;
                    }
                    var_6 = (type_9 *)*var_63;
                    var_8("\n%s/%s:\n",var_65[(int)(var_70 + -1)]);
                    var_39 = state_machine_regs.address;
                  }
                  break;
                }
                var_75 = (char *)var_7(0,"file index %u > number of files %u\n",5);
                var_14(var_75,var_18,var_17);
                var_75 = "\n <over large file table index %u>";
              }
              goto LAB_0005b184;
            case 5:
              var_6 = (type_9 *)0x0;
              var_28 = var_4;
              var_39 = var_24((type_9 *)var_21,&var_27,0,(type_9 *)var_4);
              state_machine_regs.column = (type_7)var_39;
              var_3 = (type_6 *)((int)&var_21->li_length + var_27);
              var_39 = state_machine_regs.address;
              break;
            case 6:
              state_machine_regs.is_stmt = (int)(state_machine_regs.is_stmt == 0);
              var_3 = var_21;
              break;
            case 7:
              state_machine_regs.basic_block = 1;
              var_3 = var_21;
              break;
            case 8:
              var_18 = linfo._20_4_ & 0xff;
              var_9 = (int)((type_16)(~(type_7)linfo.li_opcode_base & 0xff) /
                            (type_16)(type_2)(int)(linfo._28_4_ & 0xff));
              var_3 = var_21;
              if (linfo.li_max_ops_per_insn == '\x01') goto LAB_0005c370;
              var_35 = ((type_7)state_machine_regs.op_index + var_9) /
                       (type_7)linfo.li_max_ops_per_insn;
              uVar14 = (type_9)(((type_7)state_machine_regs.op_index + var_9) %
                              (type_7)linfo.li_max_ops_per_insn);
LAB_0005ae5c:
              var_18 = var_18 * var_35;
              state_machine_regs.op_index = uVar14;
              var_41 = state_machine_regs.address + var_18;
              var_39 = state_machine_regs.address + var_18;
              if (var_18 != 0) goto LAB_0005ae7e;
              break;
            case 9:
              var_3 = (type_6 *)((int)&var_3->li_length + 3);
              if (var_3 < var_4) {
                var_9 = 2;
LAB_0005c4cd:
                var_46 = (*byte_get)((type_9 *)var_21,var_9);
                var_73 = (type_7)var_46;
              }
              else {
                if ((var_21 < var_4) && (var_9 = (int)var_4 - (int)var_21, var_9 - 1U < 8))
                goto LAB_0005c4cd;
                var_73 = 0;
              }
              state_machine_regs._32_2_ = state_machine_regs._32_2_ & 0xff00;
              var_39 = state_machine_regs.address + var_73;
              if (var_32 <= var_3) goto LAB_0005adb0;
              goto LAB_0005ad11;
            case 0xc:
              var_28 = var_4;
              var_39 = var_24((type_9 *)var_21,&var_27,0,(type_9 *)var_4);
              var_70 = (type_9 *)var_39;
              var_3 = (type_6 *)((int)&var_21->li_length + var_27);
              var_75 = "  Set ISA to %lu\n";
LAB_0005b184:
              var_6 = (type_9 *)0x5;
              var_75 = (char *)var_7(0,var_75);
              var_8(var_75,var_70);
              var_39 = state_machine_regs.address;
              break;
            default:
              var_6 = (type_9 *)0x5;
              var_75 = (char *)var_7(0,"  Unknown opcode %d with operands: ");
              var_8(var_75,var_18);
              var_3 = var_21;
              if ((var_49 != (type_9 *)0x0) && (var_35 = (type_7)var_49[var_18 - 1], var_35 != 0)) {
                puVar35 = &var_27;
                for (; var_35 != 1; var_35 = var_35 - 1) {
                  puVar36 = puVar35;
                  var_39 = var_24((type_9 *)var_3,puVar35,0,(type_9 *)var_4);
                  var_75 = var_25("x",var_26(puVar36) << 0x20,(type_7)var_39);
                  var_8("0x%s%s",var_75,&DAT_0007c4b1);
                  var_3 = (type_6 *)((int)&var_3->li_length + var_27);
                }
                var_28 = var_4;
                var_39 = var_24((type_9 *)var_3,puVar35,0,(type_9 *)var_4);
                var_75 = var_25("x",var_26(puVar35) << 0x20,(type_7)var_39);
                var_6 = "";
                var_8("0x%s%s",var_75);
                var_3 = (type_6 *)((int)&var_3->li_length + var_27);
              }
              var_31(10,*(type_15 **)var_57);
              var_21 = var_3;
_L2741:
              var_3 = var_21;
              var_39 = state_machine_regs.address;
              if (var_18 == 1) {
joined_r0x0005af93:
                if (var_72 == (type_6 *)0x0) {
                  var_75 = "<unknown>";
LAB_0005afab:
                  var_75 = (char *)var_7(0,var_75,5);
                }
                else {
                  var_70 = (type_9 *)(state_machine_regs.file - 1);
                  if (var_17 <= var_70) {
                    var_75 = (char *)var_7(0,"corrupt file index %u encountered\n",5);
                    var_14(var_75,var_70);
                    var_75 = "<corrupt>";
                    goto LAB_0005afab;
                  }
                  var_75 = *(char **)((int)var_72 + (int)var_70 * 4 * 4);
                }
                var_23 = var_67(var_75);
                if (var_23 < 0x24) {
                  var_6 = (type_9 *)(var_23 + 1);
                  pcVar5 = (char *)var_51((size_t)var_6);
                  var_74(pcVar5,var_75,(size_t)var_6);
                  var_39 = state_machine_regs.address;
LAB_0005ac8b:
                  state_machine_regs.address._4_4_ = (type_10)(var_39 >> 0x20);
                  state_machine_regs.address._0_4_ = (type_10)var_39;
                  if (linfo.li_max_ops_per_insn == '\x01') {
                    var_8("%-35s  %11d  %#18llx",pcVar5,state_machine_regs.line,
                           (type_10)state_machine_regs.address,state_machine_regs.address._4_4_);
                    state_machine_regs.address = var_39;
                  }
                  else {
                    var_8("%-35s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,
                           (type_10)state_machine_regs.address,state_machine_regs.address._4_4_,
                           (type_7)state_machine_regs.op_index);
                    state_machine_regs.address = var_39;
                  }
                }
                else {
                  if (var_66 == 0) {
                    pcVar5 = (char *)var_51(0x24);
                    var_6 = (type_9 *)0x24;
                    var_75 = var_75 + (var_23 - 0x23);
                  }
                  else {
                    var_6 = (type_9 *)(var_23 + 1);
                    pcVar5 = (char *)var_51((size_t)var_6);
                  }
                  var_74(pcVar5,var_75,(size_t)var_6);
                  var_39 = state_machine_regs.address;
                  if (var_66 == 0) goto LAB_0005ac8b;
                  if (linfo.li_max_ops_per_insn == '\x01') {
                    var_8("%s  %11d  %#18llx",pcVar5,state_machine_regs.line,
                           (type_10)state_machine_regs.address,state_machine_regs.address._4_4_);
                  }
                  else {
                    var_8("%s  %11d  %#18llx[%d]",pcVar5,state_machine_regs.line,
                           (type_10)state_machine_regs.address,state_machine_regs.address._4_4_,
                           (type_7)state_machine_regs.op_index);
                  }
                }
                if (state_machine_regs.view == 0) {
                  var_31(10,*(type_15 **)var_57);
                }
                else {
                  var_8("  %6u\n",state_machine_regs.view);
                }
                state_machine_regs.view = state_machine_regs.view + 1;
                if (var_18 == 0xffffffff) {
                  state_machine_regs.is_stmt = (type_7)linfo._20_4_ >> 0x10 & 0xff;
                  state_machine_regs.address._0_4_ = 0;
                  state_machine_regs.address._4_4_ = 0;
                  state_machine_regs.view = 0;
                  state_machine_regs.op_index = '\0';
                  state_machine_regs.end_sequence = '\0';
                  state_machine_regs.file = 1;
                  state_machine_regs.line = 1;
                  state_machine_regs.column = 0;
                  state_machine_regs.basic_block = 0;
                  state_machine_regs.last_file_entry = 0;
                  var_31(10,*(type_15 **)var_57);
                }
                var_76(pcVar5);
                var_39 = state_machine_regs.address;
              }
            }
            if (var_32 <= var_3) goto LAB_0005adb0;
            goto LAB_0005ad11;
          }
        }
        var_39 = var_43(state_machine_regs.address._4_4_,(type_10)state_machine_regs.address);
        var_3 = var_21;
        var_57 = (type_6 *)PTR_stdout_000b3fd8;
        linfo.li_length._0_4_ = saved_linfo_11206;
        linfo.li_length._4_4_ = DAT_000b75e4;
        linfo._8_4_ = DAT_000b75e8;
        linfo.li_prologue_length._0_4_ = DAT_000b75ec;
        linfo.li_prologue_length._4_4_ = DAT_000b75f0;
        linfo._20_4_ = var_48;
        linfo.li_line_base = DAT_000b75f8;
        linfo._28_4_ = DAT_000b75fc;
        linfo.li_offset_size = DAT_000b7600;
LAB_0005adb0:
        state_machine_regs.address = var_39;
        if (var_72 != (type_6 *)0x0) {
          var_76(var_72);
        }
        if (var_65 != (type_10 *)0x0) {
          var_76(var_65);
        }
        var_31(10,*(type_15 **)var_57);
        uVar25 = var_4 < var_3;
        uVar27 = var_4 == var_3;
        var_39 = state_machine_regs.address;
        if (var_4 <= var_3) {
LAB_0005adf9:
          state_machine_regs.address._4_4_ = (type_10)(var_39 >> 0x20);
          state_machine_regs.address._0_4_ = (type_10)var_39;
          return local_58;
        }
      } while( true );
    }
  }
  else if ((var_1 & 2U) != 0) {
    var_2((type_1 *)section->name,(bfd_boolean)&section->filename,
              (type_1 *)PTR_stdout_000b3fd8);
  }
LAB_0005a988:
  var_18 = 1;
  var_39 = state_machine_regs.address;
LAB_0005a98d:
  state_machine_regs.address._4_4_ = (type_10)(var_39 >> 0x20);
  state_machine_regs.address._0_4_ = (type_10)var_39;
  return var_18;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (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: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) 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: (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: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (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: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (array_declarator declarator: (identifier) size: (number_literal)))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) 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: (binary_expression left: (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)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (return_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (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: (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))))) 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) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (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: (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))))) condition: (parenthesized_expression (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier)))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (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: (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))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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))) (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)))) (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))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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: (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) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (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) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) 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)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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))) (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)))) (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) 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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (string_literal (string_content) (escape_sequence)) (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (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) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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 (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (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: (identifier) right: (identifier))) consequence: (break_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: (identifier)) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) consequence: (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)))) (expression_statement (assignment_expression left: (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: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence) (string_content) (escape_sequence)) (identifier) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (escape_sequence) (string_content) (escape_sequence)) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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 (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal))))) (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 (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (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)))) (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)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_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 (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (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 (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier)) (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) (identifier))) (field_expression argument: (identifier) field: (field_identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (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 (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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)) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (goto_statement label: (statement_identifier)))) (switch_statement condition: (parenthesized_expression (identifier)) body: (compound_statement (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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) (pointer_expression argument: (identifier))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) (goto_statement label: (statement_identifier))) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (if_statement condition: (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))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (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 (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) (field_expression argument: (identifier) field: (field_identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (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 (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (pointer_expression argument: (identifier))))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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) (identifier) (identifier)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (break_statement)) (case_statement value: (number_literal) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (unary_expression argument: (field_expression argument: (identifier) field: (field_identifier))))) right: (call_expression function: (call_expression function: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (identifier))) arguments: (argument_list (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (pointer_expression argument: (identifier))))) (break_statement)) (case_statement value: (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: (comma_expression left: (assignment_expression left: (identifier) right: (number_literal)) 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: (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) 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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (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) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier))) (case_statement value: (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))) (case_statement value: (number_literal) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (break_statement)) (case_statement (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))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (for_statement condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (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) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (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))))))) (do_statement body: (compound_statement (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: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (binary_expression left: (parenthesized_expression (identifier)) right: (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))))) condition: (parenthesized_expression (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (unary_expression argument: (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 (identifier)) consequence: (compound_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (string_literal (string_content))))) (do_statement body: (compound_statement (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: (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))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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)))) (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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))) (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)))) (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))) (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: (number_literal))) (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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (char_literal (escape_sequence)))) 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)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) 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: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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))) (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 (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (return_statement (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (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)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (number_literal) right: (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (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))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (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: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (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: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (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)) value: (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))))) alternative: (else_clause (compound_statement (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)) 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: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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))))) (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) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (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)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (identifier)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))))))) alternative: (else_clause (compound_statement (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: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))))))) 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: (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: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (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 (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: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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)))) (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 (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (goto_statement label: (statement_identifier))))))))) 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)) (string_literal (string_content)) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (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)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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 (number_literal) (number_literal) (identifier) (identifier) (number_literal) (number_literal) (number_literal) (number_literal) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (number_literal) (identifier) (number_literal) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))))) (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: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (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: (number_literal)))) (expression_statement (assignment_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: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (number_literal) right: (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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (identifier)))))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (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)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (return_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: (identifier) arguments: (argument_list (number_literal) (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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: (number_literal))) (do_statement body: (compound_statement (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: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (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)))) (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 (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (goto_statement label: (statement_identifier))))))))) 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)) (string_literal (string_content)) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (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)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier)))))))) alternative: (else_clause (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: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (binary_expression left: (number_literal) right: (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (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) (number_literal) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (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)))) 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: (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))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (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: (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal) (identifier) (identifier) (number_literal) (number_literal) (number_literal) (number_literal) (subscript_expression argument: (identifier) index: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (number_literal) (identifier) (number_literal) (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: (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)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (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: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (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 (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (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)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (parenthesized_expression (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: (type_identifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (switch_statement condition: (parenthesized_expression (identifier)) body: (compound_statement (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (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: (parenthesized_expression (identifier)) right: (identifier)))) (switch_statement condition: (parenthesized_expression (identifier)) body: (compound_statement (case_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) (identifier))))) (case_statement value: (number_literal)) (case_statement value: (number_literal)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_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))) (case_statement value: (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: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (goto_statement label: (statement_identifier)))))))) (expression_statement (assignment_expression left: (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)) (string_literal (string_content)) (identifier) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (break_statement)) (case_statement value: (number_literal) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (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: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))))) (break_statement)) (case_statement value: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) (case_statement value: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))) (case_statement value: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) (goto_statement label: (statement_identifier))) (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (break_statement)) (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (break_statement)) (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (escape_sequence) (string_content) (escape_sequence))))) alternative: (else_clause (compound_statement (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: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (escape_sequence) (string_content) (escape_sequence)) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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 (escape_sequence) (string_content) (escape_sequence)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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))))) (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) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (escape_sequence) (string_content) (escape_sequence)))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (escape_sequence) (string_content) (escape_sequence)) (subscript_expression argument: (identifier) index: (binary_expression left: (identifier) right: (number_literal))) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))))))) (break_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) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (escape_sequence) (string_content))))))) (goto_statement label: (statement_identifier))) (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (break_statement)) (case_statement value: (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: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement)) (case_statement value: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (break_statement)) (case_statement value: (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: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (unary_expression argument: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))) right: (number_literal)))) right: (call_expression function: (call_expression function: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (identifier))) arguments: (argument_list (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))) right: (identifier))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (field_expression argument: (identifier) field: (field_identifier)))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (field_expression argument: (identifier) field: (field_identifier)) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (break_statement)) (case_statement value: (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: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (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: (type_identifier)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier))) (case_statement value: (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 (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (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: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (break_statement)) (case_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content)) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (for_statement condition: (binary_expression left: (identifier) right: (number_literal)) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_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 (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 (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (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 (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal)))))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (binary_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier))))))))))) alternative: (else_clause (compound_statement (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 (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier))))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)) (identifier) (identifier) (identifier) (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content) (escape_sequence)) (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: (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: (number_literal)) 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))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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 (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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 (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (return_statement (identifier))))) condition: (parenthesized_expression (true))))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))))))) (return_statement (number_literal)))))

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

undefined4 MASKED(int param_1)

{
  code *pcVar1;
  undefined *puVar2;
  undefined1 *puVar3;
  ushort uVar4;
  byte *pbVar5;
  char *pcVar6;
  byte bVar13;
  uint uVar7;
  size_t sVar8;
  char *pcVar9;
  int iVar10;
  undefined4 uVar11;
  undefined4 uVar12;
  int iVar14;
  size_t __n;
  byte *pbVar15;
  byte *pbVar16;
  undefined4 *puVar17;
  uint uVar18;
  uint uVar19;
  byte *pbVar20;
  bool bVar21;
  bool bVar22;
  undefined1 uVar23;
  bool bVar24;
  undefined1 uVar25;
  byte bVar26;
  ulonglong uVar27;
  longlong lVar28;
  longlong lVar29;
  longlong lVar30;
  undefined *puVar31;
  undefined1 *puVar32;
  byte *local_bc;
  byte *local_b8;
  byte *local_b4;
  uint local_b0;
  undefined4 *local_ac;
  undefined4 *local_a4;
  byte *local_9c;
  int local_98;
  uint local_94;
  int local_90;
  uint local_8c;
  undefined1 local_88;
  uint uStack_84;
  uint local_7c;
  uint local_78;
  char *local_6c;
  byte *local_60;
  undefined4 local_58;
  undefined1 *local_54 [3];
  byte *local_48;
  int local_44;
  undefined4 local_40;
  undefined4 local_3c;
  uint local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  int local_28;
  undefined4 local_24;
  uint local_20 [3];
  undefined4 uStack_14;
  
  bVar26 = 0;
  uStack_14 = 0x5a8e9;
  local_bc = *(byte **)(param_1 + 0x10);
  pbVar5 = local_bc + *(int *)(param_1 + 0x1c);
  if (DAT_000b9db0 == 0) {
    DAT_000b9db0 = 1;
  }
  else if ((DAT_000b9db0 & 1) == 0) {
    if ((DAT_000b9db0 & 2) == 0) {
      return 1;
    }
    FUN_0004eb80();
    uVar23 = local_bc < pbVar5;
    uVar25 = local_bc == pbVar5;
    if (!(bool)uVar23) {
      return 1;
    }
    local_58 = 1;
    goto LAB_0005a9d0;
  }
  uVar11 = *(undefined4 *)(param_1 + 8);
  if ((DAT_000b9d98 == 0) || (iVar14 = *(int *)(param_1 + 0xc), iVar14 == 0)) {
    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s:\n\n",5);
    printf(pcVar6,uVar11);
  }
  else {
    pcVar6 = (char *)dcgettext(0,"Raw dump of debug contents of section %s (loaded from %s):\n\n",5)
    ;
    printf(pcVar6,uVar11,iVar14);
  }
  puVar2 = PTR_stdout_000b3fd8;
  bVar21 = local_bc < pbVar5;
  bVar24 = local_bc == pbVar5;
  local_b4 = local_bc;
  if (bVar21) {
LAB_0005b368:
    do {
      iVar14 = 0xc;
      pbVar20 = *(byte **)(param_1 + 8);
      pbVar16 = (byte *)".debug_line.";
      do {
        if (iVar14 == 0) break;
        iVar14 = iVar14 + -1;
        bVar21 = *pbVar20 < *pbVar16;
        bVar24 = *pbVar20 == *pbVar16;
        pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
        pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
      } while (bVar24);
      bVar22 = false;
      bVar21 = (!bVar21 && !bVar24) == bVar21;
      if (bVar21) {
        iVar14 = 0x10;
        pbVar20 = *(byte **)(param_1 + 8);
        pbVar16 = (byte *)".debug_line.dwo";
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          bVar22 = *pbVar20 < *pbVar16;
          bVar21 = *pbVar20 == *pbVar16;
          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
          pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
        } while (bVar21);
        if ((!bVar22 && !bVar21) == bVar22) goto LAB_0005bd30;
        local_20[0] = DAT_000b7640;
        local_40 = DAT_000b7620;
        local_3c = DAT_000b7624;
        local_38 = DAT_000b7628;
        local_34 = DAT_000b762c;
        local_30 = DAT_000b7630;
        local_2c = DAT_000b7634;
        local_28 = DAT_000b7638;
        local_24 = DAT_000b763c;
        if ((char)DAT_000b763c == '\0') {
          pcVar6 = 
          "Partial .debug_line. section encountered without a prior full .debug_line section\n";
          local_48 = pbVar5;
LAB_0005d6a3:
          uVar11 = dcgettext(0,pcVar6,5);
          warn(uVar11);
          goto LAB_0005d6b6;
        }
        DAT_000b9d18 = DAT_000b7634 >> 0x10 & 0xff;
        DAT_000b9d00 = 0;
        DAT_000b9d04 = 0;
        DAT_000b9d08 = 0;
        DAT_000b9d0c = 1;
        DAT_000b9d10 = (undefined1 *)0x1;
        DAT_000b9d14 = 0;
        DAT_000b9d1c = 0;
        DAT_000b9d20 = 0;
        DAT_000b9d24 = 0;
        local_94 = 0;
        local_48 = pbVar5;
      }
      else {
LAB_0005bd30:
        local_94 = FUN_0004d730(&local_40,&local_48);
        if (local_94 == 0) {
LAB_0005d6b6:
          uVar23 = 0;
          uVar25 = (DAT_000b9db0 & 2) == 0;
          if ((bool)uVar25) {
            return 0;
          }
          FUN_0004eb80();
          local_58 = 0;
          goto LAB_0005a9d0;
        }
        pcVar6 = (char *)dcgettext(0,"  Offset:                      0x%lx\n",5);
        printf(pcVar6,(int)local_b4 - (int)local_bc);
        uVar11 = local_40;
        pcVar6 = (char *)dcgettext(0,"  Length:                      %ld\n",5);
        printf(pcVar6,uVar11);
        uVar19 = local_38 & 0xffff;
        pcVar6 = (char *)dcgettext(0,"  DWARF Version:               %d\n",5);
        printf(pcVar6,uVar19);
        uVar11 = local_34;
        pcVar6 = (char *)dcgettext(0,"  Prologue Length:             %d\n",5);
        printf(pcVar6,uVar11);
        uVar19 = local_2c & 0xff;
        pcVar6 = (char *)dcgettext(0,"  Minimum Instruction Length:  %d\n",5);
        printf(pcVar6,uVar19);
        if (3 < (ushort)local_38) {
          uVar19 = local_2c >> 8;
          pcVar6 = (char *)dcgettext(0,"  Maximum Ops per Instruction: %d\n",5);
          printf(pcVar6,uVar19 & 0xff);
        }
        uVar19 = local_2c >> 0x10;
        pcVar6 = (char *)dcgettext(0,"  Initial value of \'is_stmt\':  %d\n",5);
        printf(pcVar6,uVar19 & 0xff);
        iVar14 = local_28;
        pcVar6 = (char *)dcgettext(0,"  Line Base:                   %d\n",5);
        printf(pcVar6,iVar14);
        uVar19 = local_24 & 0xff;
        pcVar6 = (char *)dcgettext(0,"  Line Range:                  %d\n",5);
        printf(pcVar6,uVar19);
        uVar19 = local_24 >> 8;
        pcVar6 = (char *)dcgettext(0,"  Opcode Base:                 %d\n",5);
        printf(pcVar6,uVar19 & 0xff);
        if ((byte)local_24 == '\0') {
          uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
          warn(uVar11);
          local_24 = CONCAT31(local_24._1_3_,1);
        }
        DAT_000b9d18 = local_2c >> 0x10 & 0xff;
        DAT_000b9d00 = 0;
        DAT_000b9d04 = 0;
        DAT_000b9d08 = 0;
        DAT_000b9d0c = 1;
        DAT_000b9d10 = (undefined1 *)0x1;
        DAT_000b9d14 = 0;
        DAT_000b9d1c = 0;
        DAT_000b9d20 = 0;
        DAT_000b9d24 = 0;
        if (pbVar5 <= (byte *)((local_24 >> 8 & 0xff) + local_94)) {
          pcVar6 = "Line Base extends beyond end of section\n";
          goto LAB_0005d6a3;
        }
        pcVar6 = (char *)dcgettext(0,"\n Opcodes:\n",5);
        printf(pcVar6);
        uVar19 = (uint)local_24._1_1_;
        if (1 < local_24._1_1_) {
          iVar14 = 1;
          do {
            uVar19 = (uint)*(byte *)(local_94 + -1 + iVar14);
            pcVar6 = (char *)dcngettext(0,"  Opcode %d has %d arg\n","  Opcode %d has %d args\n",
                                        uVar19,5);
            iVar10 = iVar14 + 1;
            printf(pcVar6,iVar14,uVar19);
            uVar19 = local_24 >> 8 & 0xff;
            iVar14 = iVar10;
          } while (iVar10 < (int)uVar19);
        }
        pbVar20 = (byte *)(local_94 + -1 + uVar19);
        if ((ushort)local_38 < 5) {
          if (*pbVar20 == 0) {
            local_b4 = pbVar20 + 1;
            pcVar6 = (char *)dcgettext(0,"\n The Directory Table is empty.\n",5);
            printf(pcVar6);
            if (pbVar20[1] == 0) goto LAB_0005c013;
LAB_0005d01c:
            pcVar6 = (char *)dcgettext(0,"\n The File Name Table (offset 0x%lx):\n",5);
            printf(pcVar6,(int)local_b4 - (int)local_bc);
            pbVar16 = (byte *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Entry\tDir\tTime\tSize\tName\n",5);
            printf(pcVar6);
            if ((local_b4 < pbVar5) && (pbVar20[1] != 0)) {
              pbVar20 = local_b4;
              while( true ) {
                DAT_000b9d24 = DAT_000b9d24 + 1;
                printf("  %d\t",DAT_000b9d24,pbVar16);
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                local_b4 = pbVar20 + sVar8 + 1;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("%s\t",uVar11);
                local_b4 = local_b4 + local_44;
                pbVar16 = pbVar20;
                printf("%.*s\n",(int)pbVar5 - (int)pbVar20);
                if (pbVar5 == local_b4) break;
                if ((pbVar5 <= local_b4) || (pbVar20 = local_b4, *local_b4 == 0)) goto LAB_0005c031;
              }
              uVar11 = dcgettext(0,"Corrupt file name table entry\n",5);
              warn(uVar11);
              local_b4 = pbVar5;
            }
          }
          else {
            pcVar6 = (char *)dcgettext(0,"\n The Directory Table (offset 0x%lx):\n",5);
            printf(pcVar6,(int)pbVar20 - (int)local_bc);
            if ((pbVar20 < pbVar5) && (*pbVar20 != 0)) {
              iVar14 = 0;
              do {
                iVar14 = iVar14 + 1;
                printf("  %d\t%.*s\n",iVar14,(int)pbVar5 - (int)pbVar20,pbVar20);
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                pbVar20 = pbVar20 + sVar8 + 1;
                if (pbVar5 <= pbVar20) break;
              } while (*pbVar20 != 0);
            }
            if (pbVar5 + -1 <= pbVar20) break;
            local_b4 = pbVar20 + 1;
            if (pbVar20[1] != 0) goto LAB_0005d01c;
LAB_0005c013:
            pcVar6 = (char *)dcgettext(0,"\n The File Name Table is empty.\n",5);
            printf(pcVar6);
          }
LAB_0005c031:
          local_b4 = local_b4 + 1;
        }
        else {
          FUN_0004e130();
          uVar11 = dcgettext(0,"Directory",5);
          FUN_0005a380(&local_38,local_20,param_1,uVar11);
          uVar11 = dcgettext(0,"File name",5);
          local_b4 = (byte *)FUN_0005a380(&local_38,local_20,param_1,uVar11);
        }
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        DAT_000b7620 = local_40;
        DAT_000b7624 = local_3c;
        DAT_000b7628 = local_38;
        DAT_000b762c = local_34;
        DAT_000b7630 = local_30;
        DAT_000b7634 = local_2c;
        DAT_000b7638 = local_28;
        DAT_000b763c = local_24;
        DAT_000b7640 = local_20[0];
      }
      local_40 = DAT_000b7620;
      local_3c = DAT_000b7624;
      local_38 = DAT_000b7628;
      local_34 = DAT_000b762c;
      local_30 = DAT_000b7630;
      local_2c = DAT_000b7634;
      local_28 = DAT_000b7638;
      local_24 = DAT_000b763c;
      local_20[0] = DAT_000b7640;
      if (local_b4 < local_48) {
        puVar32 = (undefined1 *)0x5;
        pcVar6 = (char *)dcgettext(0," Line Number Statements:\n",5);
        printf(pcVar6);
        pbVar20 = local_b4;
        if (local_b4 < local_48) {
LAB_0005b6b6:
          printf("  [0x%08lx]",(int)pbVar20 - (int)local_bc,puVar32);
          iVar14 = DAT_000b9d04;
          uVar19 = DAT_000b9d00;
          local_b4 = pbVar20 + 1;
          bVar13 = *pbVar20;
          if (local_24._1_1_ <= bVar13) {
            bVar13 = bVar13 - local_24._1_1_;
            uVar7 = local_2c & 0xff;
            uVar18 = (uint)(bVar13 / (byte)local_24);
            if (local_2c._1_1_ == '\x01') {
              lVar28 = (ulonglong)uVar18 * (ulonglong)uVar7;
              lVar29 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);
              DAT_000b9d00 = (uint)lVar29;
              DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
              if ((int)lVar28 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar6 = "  Special opcode %d: advance Address by %s to 0x%s%s";
              pcVar9 = (char *)dcgettext(0,"  Special opcode %d: advance Address by %s to 0x%s%s",5)
              ;
              puVar32 = &DAT_0007bc55;
            }
            else {
              iVar10 = FUN_0006b800((byte)DAT_000b9d20 + uVar18,
                                    CARRY4((uint)(byte)DAT_000b9d20,uVar18),local_2c._1_1_,0,
                                    local_54);
              puVar32 = local_54[0];
              uVar7 = iVar10 * uVar7;
              DAT_000b9d00 = uVar7 + uVar19;
              DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);
              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);
              if (uVar7 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar9 = (char *)dcgettext(0,
                                         "  Special opcode %d: advance Address by %s to 0x%s[%d]%s",
                                         5);
              pcVar6 = "";
            }
            printf(pcVar9,(uint)bVar13,uVar12,uVar11,puVar32,pcVar6);
            puVar32 = DAT_000b9d10 + (uint)(bVar13 % (byte)local_24) + local_28;
            DAT_000b9d10 = puVar32;
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0," and Line by %s to %d",5);
            printf(pcVar6,uVar11,puVar32);
            if (DAT_000b9d08 == 0) goto LAB_0005bb80;
code_r0x0005b679:
            iVar14 = DAT_000b9d08;
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0," (view %u)\n");
            printf(pcVar6,iVar14,puVar32);
LAB_0005b698:
            DAT_000b9d08 = DAT_000b9d08 + 1;
            goto LAB_0005b6a1;
          }
          switch(bVar13) {
          case 0:
            iVar14 = FUN_000523d0();
            local_b4 = local_b4 + iVar14;
            break;
          case 1:
            puVar31 = &UNK_0009393c;
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,&UNK_0009393c);
            printf(pcVar6,puVar31,puVar32);
            if (DAT_000b9d08 != 0) goto code_r0x0005b679;
LAB_0005bb80:
            putc(10,*(FILE **)PTR_stdout_000b3fd8);
            goto LAB_0005b698;
          case 2:
            uVar27 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            iVar14 = DAT_000b9d04;
            uVar19 = DAT_000b9d00;
            local_b4 = local_b4 + local_44;
            if (local_2c._1_1_ == '\x01') {
              lVar28 = (uVar27 & 0xffffffff) * (ulonglong)(local_2c & 0xff);
              uVar19 = (uint)lVar28;
              iVar14 = (int)(uVar27 >> 0x20) * (local_2c & 0xff) + (int)((ulonglong)lVar28 >> 0x20);
              bVar21 = CARRY4(DAT_000b9d00,uVar19);
              DAT_000b9d00 = DAT_000b9d00 + uVar19;
              DAT_000b9d04 = DAT_000b9d04 + iVar14 + (uint)bVar21;
              if (iVar14 != 0 || uVar19 != 0) {
                DAT_000b9d08 = 0;
              }
              uVar11 = FUN_0004cb50(0);
              uVar12 = FUN_0004cb50(0);
              pcVar6 = "  Advance PC by %s to 0x%s%s\n";
              goto code_r0x0005b8b1;
            }
            iVar10 = FUN_0006b800(uVar27 + (byte)DAT_000b9d20,local_2c._1_1_,0,local_54);
            puVar3 = local_54[0];
            uVar7 = iVar10 * (local_2c & 0xff);
            DAT_000b9d00 = uVar7 + uVar19;
            DAT_000b9d04 = iVar14 + (uint)CARRY4(uVar7,uVar19);
            DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,(char)local_54[0]);
            if (uVar7 != 0) {
              DAT_000b9d08 = 0;
            }
            uVar11 = FUN_0004cb50(0);
            uVar12 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Advance PC by %s to 0x%s[%d]%s\n");
            printf(pcVar6,uVar12,uVar11,puVar3,&DAT_0007bc55);
            break;
          case 3:
            iVar14 = FUN_0004f990(local_b4,&local_44,1,pbVar5);
            local_b4 = local_b4 + local_44;
            puVar32 = DAT_000b9d10 + iVar14;
            DAT_000b9d10 = puVar32;
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0,"  Advance Line by %s to %d\n",5);
            printf(pcVar6,uVar11,puVar32);
            break;
          case 4:
            iVar14 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set File Name to entry %s in the File Name Table\n");
            printf(pcVar6,uVar11,puVar32);
            DAT_000b9d0c = iVar14;
            break;
          case 5:
            uVar11 = FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar12 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set column to %s\n");
            printf(pcVar6,uVar12,puVar32);
            DAT_000b9d14 = uVar11;
            break;
          case 6:
            bVar21 = DAT_000b9d18 == 0;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set is_stmt to %s\n");
            printf(pcVar6,uVar11,puVar32);
            DAT_000b9d18 = (uint)bVar21;
            break;
          case 7:
            pcVar6 = "  Set basic block\n";
            puVar32 = (undefined1 *)0x5;
            pcVar9 = (char *)dcgettext(0,"  Set basic block\n");
            printf(pcVar9,pcVar6,puVar32);
            DAT_000b9d1c = 1;
            break;
          case 8:
            if (local_2c._1_1_ == '\0') {
                    /* WARNING: Does not return */
              pcVar1 = (code *)invalidInstructionException();
              (*pcVar1)();
            }
            uVar19 = (int)((ulonglong)(byte)~local_24._1_1_ /
                          (ulonglong)(longlong)(int)(local_24 & 0xff)) * (local_2c & 0xff);
            bVar21 = CARRY4(uVar19,DAT_000b9d00);
            DAT_000b9d00 = uVar19 + DAT_000b9d00;
            DAT_000b9d04 = DAT_000b9d04 + (uint)bVar21;
            if (uVar19 != 0) {
              DAT_000b9d08 = 0;
            }
            uVar11 = FUN_0004cb50(0);
            uVar12 = FUN_0004cb50(0);
            pcVar6 = "  Advance PC by constant %s to 0x%s%s\n";
code_r0x0005b8b1:
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,pcVar6);
            printf(pcVar6,uVar12,uVar11,&DAT_0007bc55);
            break;
          case 9:
            if (pbVar20 + 3 < pbVar5) {
              iVar14 = 2;
code_r0x0005d4cd:
              lVar28 = (*DAT_000b9dd8)(local_b4,iVar14);
            }
            else {
              lVar28 = 0;
              if ((local_b4 < pbVar5) &&
                 (iVar14 = (int)pbVar5 - (int)local_b4, lVar28 = 0, iVar14 - 1U < 8))
              goto code_r0x0005d4cd;
            }
            lVar28 = lVar28 + CONCAT44(DAT_000b9d04,DAT_000b9d00);
            DAT_000b9d00 = (uint)lVar28;
            DAT_000b9d04 = (int)((ulonglong)lVar28 >> 0x20);
            DAT_000b9d20 = DAT_000b9d20 & 0xff00;
            puVar32 = (undefined1 *)FUN_0004cb50(0);
            uVar11 = FUN_0004cb50(0);
            pcVar6 = (char *)dcgettext(0,"  Advance PC by fixed size amount %s to 0x%s\n",5);
            printf(pcVar6,uVar11,puVar32);
            local_b4 = pbVar20 + 3;
            break;
          case 10:
            pcVar6 = "  Set prologue_end to true\n";
            goto code_r0x0005b70b;
          case 0xb:
            pcVar6 = "  Set epilogue_begin to true\n";
code_r0x0005b70b:
            puVar32 = (undefined1 *)0x5;
            pcVar9 = (char *)dcgettext(0,pcVar6);
            printf(pcVar9,pcVar6,puVar32);
            pbVar20 = local_b4;
            if (local_48 <= local_b4) goto LAB_0005b730;
            goto LAB_0005b6b6;
          case 0xc:
            FUN_0004f990(local_b4,&local_44,0,pbVar5);
            local_b4 = local_b4 + local_44;
            uVar11 = FUN_0004cb50(0);
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Set ISA to %s\n");
            printf(pcVar6,uVar11,puVar32);
            break;
          default:
            puVar32 = (undefined1 *)0x5;
            pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ");
            printf(pcVar6,(uint)bVar13,puVar32);
            if ((local_94 != 0) &&
               (uVar19 = (uint)*(byte *)(local_94 + -1 + (uint)bVar13), uVar19 != 0)) {
              for (; uVar19 != 1; uVar19 = uVar19 - 1) {
                FUN_0004f990(local_b4,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("0x%s%s",uVar11,&DAT_0007c4b1);
                local_b4 = local_b4 + local_44;
              }
              FUN_0004f990(local_b4,&local_44,0,pbVar5);
              uVar11 = FUN_0004cb50(0);
              puVar32 = &DAT_0007bc55;
              printf("0x%s%s",uVar11,&DAT_0007bc55);
              local_b4 = local_b4 + local_44;
            }
            putc(10,*(FILE **)puVar2);
          }
LAB_0005b6a1:
          pbVar20 = local_b4;
          if (local_48 <= local_b4) goto LAB_0005b730;
          goto LAB_0005b6b6;
        }
LAB_0005b730:
        putc(10,*(FILE **)PTR_stdout_000b3fd8);
        bVar21 = pbVar5 < local_b4;
        bVar24 = pbVar5 == local_b4;
        if (pbVar5 <= local_b4) break;
        goto LAB_0005b368;
      }
      pcVar6 = (char *)dcgettext(0," No Line Number Statements.\n",5);
      printf(pcVar6);
      bVar21 = pbVar5 < local_b4;
      bVar24 = pbVar5 == local_b4;
    } while (local_b4 < pbVar5);
    uVar23 = 0;
    uVar25 = (DAT_000b9db0 & 2) == 0;
    if (!(bool)uVar25) {
      FUN_0004eb80();
      local_58 = 1;
LAB_0005a9d0:
      do {
        local_6c = ".debug_line.";
        iVar14 = 0xc;
        pbVar20 = *(byte **)(param_1 + 8);
        do {
          if (iVar14 == 0) break;
          iVar14 = iVar14 + -1;
          uVar23 = *pbVar20 < (byte)*local_6c;
          uVar25 = *pbVar20 == *local_6c;
          pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
          local_6c = (char *)((byte *)local_6c + (uint)bVar26 * -2 + 1);
        } while ((bool)uVar25);
        bVar21 = false;
        bVar24 = (!(bool)uVar23 && !(bool)uVar25) == (bool)uVar23;
        if (bVar24) {
          iVar14 = 0x10;
          pbVar20 = *(byte **)(param_1 + 8);
          pbVar16 = (byte *)".debug_line.dwo";
          do {
            if (iVar14 == 0) break;
            iVar14 = iVar14 + -1;
            bVar21 = *pbVar20 < *pbVar16;
            bVar24 = *pbVar20 == *pbVar16;
            pbVar20 = pbVar20 + (uint)bVar26 * -2 + 1;
            pbVar16 = pbVar16 + (uint)bVar26 * -2 + 1;
          } while (bVar24);
          if ((!bVar21 && !bVar24) == bVar21) goto LAB_0005c150;
          local_20[0] = DAT_000b7600;
          local_40 = DAT_000b75e0;
          local_3c = DAT_000b75e4;
          local_38 = DAT_000b75e8;
          local_34 = DAT_000b75ec;
          local_30 = DAT_000b75f0;
          local_2c = DAT_000b75f4;
          local_28 = DAT_000b75f8;
          local_24 = DAT_000b75fc;
          if ((char)DAT_000b75fc == '\0') {
            local_48 = pbVar5;
            uVar11 = dcgettext(0,
                               "Partial .debug_line. section encountered without a prior full .debug_line section\n"
                               ,5);
            warn(uVar11);
            return 0;
          }
          DAT_000b9d18 = DAT_000b75f4 >> 0x10 & 0xff;
          DAT_000b9d20 = 0;
          lVar29 = 0;
          DAT_000b9d08 = 0;
          DAT_000b9d0c = 1;
          DAT_000b9d10 = (undefined1 *)0x1;
          DAT_000b9d14 = 0;
          DAT_000b9d1c = 0;
          DAT_000b9d24 = 0;
          lVar28 = 0;
          local_a4 = (undefined4 *)0x0;
          local_94 = 0;
          local_b8 = (byte *)0x0;
          local_90 = 0;
          local_9c = PTR_stdout_000b3fd8;
          local_48 = pbVar5;
          lVar30 = 0;
          if (local_bc < pbVar5) goto LAB_0005ad11;
        }
        else {
LAB_0005c150:
          local_90 = FUN_0004d730(&local_40,&local_48);
          if (local_90 == 0) {
            return 0;
          }
          if ((byte)local_24 == '\0') {
            uVar11 = dcgettext(0,"Line range of 0 is invalid, using 1 instead\n",5);
            warn(uVar11);
            local_24 = CONCAT31(local_24._1_3_,1);
          }
          DAT_000b9d18 = local_2c >> 0x10 & 0xff;
          DAT_000b9d00 = 0;
          DAT_000b9d20 = 0;
          uVar19 = local_24 >> 8 & 0xff;
          DAT_000b9d04 = 0;
          pbVar20 = (byte *)(local_90 + -1 + uVar19);
          DAT_000b9d08 = 0;
          DAT_000b9d0c = 1;
          DAT_000b9d10 = (undefined1 *)0x1;
          DAT_000b9d14 = 0;
          DAT_000b9d1c = 0;
          DAT_000b9d24 = 0;
          if (pbVar5 <= pbVar20) {
            uVar11 = dcgettext(0,"opcode base of %d extends beyond end of section\n",5);
            warn(uVar11,uVar19);
            return 0;
          }
          if ((ushort)local_38 < 5) {
            local_b4 = (byte *)0x0;
            local_b0 = 0;
            local_a4 = (undefined4 *)0x0;
            pbVar16 = pbVar20;
            if (*pbVar20 != 0) {
              local_b0 = 0;
              local_b4 = (byte *)0x0;
              do {
                sVar8 = strnlen((char *)pbVar16,(int)pbVar5 - (int)pbVar16);
                bVar21 = 0xfffffffe < local_b4;
                local_b4 = (byte *)((int)local_b4 + 1);
                pbVar16 = pbVar16 + sVar8 + 1;
                local_b0 = local_b0 + bVar21;
                if (pbVar5 <= pbVar16) {
                  pcVar6 = "directory table ends unexpectedly\n";
                  goto LAB_0005c678;
                }
              } while (*pbVar16 != 0);
              local_a4 = (undefined4 *)FUN_0006b190((int)local_b4 * 4);
              bVar13 = *pbVar20;
              puVar17 = local_a4;
              while (bVar13 != 0) {
                *puVar17 = pbVar20;
                puVar17 = puVar17 + 1;
                sVar8 = strnlen((char *)pbVar20,(int)pbVar20 - (int)pbVar5);
                pbVar20 = pbVar20 + sVar8 + 1;
                bVar13 = *pbVar20;
              }
            }
            lVar28 = CONCAT44(local_b0,local_b4);
            pbVar20 = pbVar16 + 1;
            if ((pbVar20 < pbVar5) && (pbVar16[1] != 0)) {
              local_94 = 0;
              pbVar15 = pbVar20;
              do {
                sVar8 = strnlen((char *)pbVar15,(int)pbVar5 - (int)pbVar15);
                pbVar15 = pbVar15 + sVar8 + 1;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                FUN_0004f990(pbVar15,&local_44,0,pbVar5);
                pbVar15 = pbVar15 + local_44;
                local_94 = local_94 + 1;
                if (pbVar5 <= pbVar15) {
                  pcVar6 = "file table ends unexpectedly\n";
                  goto LAB_0005c678;
                }
              } while (*pbVar15 != 0);
              local_b8 = (byte *)FUN_0006b190(local_94 * 0x10);
              bVar13 = pbVar16[1];
              puVar17 = (undefined4 *)local_b8;
              while (bVar13 != 0) {
                *puVar17 = pbVar20;
                sVar8 = strnlen((char *)pbVar20,(int)pbVar5 - (int)pbVar20);
                pbVar20 = pbVar20 + sVar8 + 1;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[1] = uVar11;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[2] = uVar11;
                uVar11 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
                pbVar20 = pbVar20 + local_44;
                puVar17[3] = uVar11;
                puVar17 = puVar17 + 4;
                bVar13 = *pbVar20;
              }
              pbVar16 = pbVar15 + 1;
              if (local_a4 == (undefined4 *)0x0) {
                uVar11 = *(undefined4 *)local_b8;
                pcVar6 = (char *)dcgettext(0,"CU: %s:\n",5);
                printf(pcVar6,uVar11);
              }
              else {
LAB_0005cd50:
                uVar19 = *(uint *)((int)local_b8 + 4);
                if (uVar19 == 0) goto LAB_0005cd5b;
LAB_0005cdc0:
                local_b0 = (uint)((ulonglong)lVar28 >> 0x20);
                local_b4 = (byte *)lVar28;
                if (lVar28 == 0) {
                  pcVar6 = "<unknown>";
LAB_0005d3fb:
                  pcVar6 = (char *)dcgettext(0,pcVar6,5);
                }
                else {
                  if (local_b0 < (local_b4 < uVar19)) {
                    uVar11 = FUN_0004cb50(0);
                    uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);
                    warn(uVar12,uVar19,uVar11);
                    pcVar6 = "<corrupt>";
                    goto LAB_0005d3fb;
                  }
                  pcVar6 = (char *)local_a4[uVar19 - 1];
                }
                uVar11 = *(undefined4 *)local_b8;
                if ((DAT_000b9da4 != 0) || (sVar8 = strlen(pcVar6), sVar8 < 0x4c))
                goto LAB_0005cd63;
                printf("%s:\n",uVar11);
              }
            }
            else {
              local_94 = 0;
              pbVar16 = pbVar16 + 2;
              local_b8 = (byte *)0x0;
            }
          }
          else {
            FUN_0004e130();
            pbVar15 = (byte *)(uVar19 + local_90);
            pbVar16 = pbVar15;
            if (pbVar15 < pbVar5) {
              iVar14 = 1;
LAB_0005d415:
              uVar19 = (*DAT_000b9dd8)(pbVar20,iVar14);
              local_ac = (undefined4 *)(uVar19 & 0xff);
              if (local_ac != (undefined4 *)0x0) {
                iVar14 = 0;
                uVar19 = 0;
                do {
                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  FUN_0004f990(pbVar16,&local_44,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  bVar21 = 0xfffffffe < uVar19;
                  uVar19 = uVar19 + 1;
                  iVar14 = iVar14 + (uint)bVar21;
                } while (iVar14 != 0 || local_ac != (undefined4 *)uVar19);
              }
            }
            else {
              iVar14 = (int)pbVar5 - (int)pbVar20;
              if (iVar14 - 1U < 8) goto LAB_0005d415;
              local_ac = (undefined4 *)0x0;
            }
            local_bc = (byte *)&local_44;
            lVar28 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);
            pbVar16 = pbVar16 + local_44;
            if (pbVar5 == pbVar16) {
              pcVar6 = "Corrupt directories list\n";
              goto LAB_0005c678;
            }
            local_a4 = (undefined4 *)FUN_0006b190((int)lVar28 << 2);
            if (lVar28 != 0) {
              local_9c = (byte *)0x0;
              local_98 = 0;
              do {
                if (local_ac != (undefined4 *)0x0) {
                  local_94 = 0;
                  local_b8 = pbVar15;
                  do {
                    lVar29 = FUN_0004f990(local_b8,local_bc,0,pbVar5);
                    local_b8 = local_b8 + local_44;
                    lVar30 = FUN_0004f990(local_b8,local_bc,0,pbVar5);
                    uVar19 = local_20[0];
                    local_b8 = local_b8 + local_44;
                    if (pbVar5 == pbVar16) {
                      uVar11 = dcgettext(0,"Corrupt directories list\n",5);
                      warn(uVar11);
                      goto LAB_0005c9e0;
                    }
                    if (lVar29 == 1) {
                      if (lVar30 == 8) {
                        local_a4[(int)local_9c] = pbVar16;
                      }
                      else if (lVar30 == 0x1f) {
                        if (local_20[0] < 9) {
                          if (pbVar16 + local_20[0] < pbVar5) {
LAB_0005c92c:
                            if (uVar19 - 1 < 8) goto LAB_0005c934;
                          }
                          else {
LAB_0005c920:
                            if (pbVar16 < pbVar5) {
                              uVar19 = (int)pbVar5 - (int)pbVar16;
                              goto LAB_0005c92c;
                            }
                          }
                        }
                        else {
                          uVar11 = dcngettext(0,
                                              "internal error: attempt to read %d byte of data in to %d sized variable"
                                              ,
                                              "internal error: attempt to read %d bytes of data in to %d sized variable"
                                              ,local_20[0],5);
                          error(uVar11,uVar19,8);
                          if (pbVar5 <= pbVar16 + 8) goto LAB_0005c920;
                          uVar19 = 8;
LAB_0005c934:
                          (*DAT_000b9dd8)(pbVar16,uVar19);
                        }
                        uVar11 = FUN_0004e690();
                        local_a4[(int)local_9c] = uVar11;
                      }
                    }
                    pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,
                                                   local_38 & 0xffff,0,1,param_1,0,9);
                    local_94 = local_94 + 1;
                  } while (local_ac != (undefined4 *)local_94);
                }
                if (pbVar5 == pbVar16) {
LAB_0005c9e0:
                  uVar11 = dcgettext(0,"Corrupt directories list\n",5);
                  warn(uVar11);
                  local_60 = pbVar16 + 1;
                  if (local_60 < pbVar5) goto LAB_0005ca09;
                  goto LAB_0005ccd9;
                }
                bVar21 = 0xfffffffe < local_9c;
                local_9c = (byte *)((int)local_9c + 1);
                local_98 = local_98 + (uint)bVar21;
              } while (lVar28 != CONCAT44(local_98,local_9c));
            }
            local_60 = pbVar16 + 1;
            if (local_60 < pbVar5) {
LAB_0005ca09:
              iVar14 = 1;
LAB_0005ca0e:
              local_7c = (*DAT_000b9dd8)(pbVar16,iVar14);
              local_7c = local_7c & 0xff;
              pbVar16 = local_60;
              if (local_7c != 0) {
                iVar14 = 0;
                uVar19 = 0;
                do {
                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  FUN_0004f990(pbVar16,local_bc,0,pbVar5);
                  pbVar16 = pbVar16 + local_44;
                  bVar21 = 0xfffffffe < uVar19;
                  uVar19 = uVar19 + 1;
                  iVar14 = iVar14 + (uint)bVar21;
                } while (iVar14 != 0 || local_7c != uVar19);
              }
            }
            else {
              if ((pbVar16 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar16, iVar14 - 1U < 8))
              goto LAB_0005ca0e;
LAB_0005ccd9:
              local_7c = 0;
              pbVar16 = local_60;
            }
            local_94 = FUN_0004f990(pbVar16,local_bc,0,pbVar5);
            pbVar16 = pbVar16 + local_44;
            if (pbVar5 == pbVar16) {
              pcVar6 = "Corrupt file name list\n";
LAB_0005c678:
              uVar11 = dcgettext(0,pcVar6,5);
              warn(uVar11);
              return local_58;
            }
            local_b8 = (byte *)FUN_0006b1d0(1,local_94 << 4);
            if (local_94 == 0) goto LAB_0005cd50;
            local_ac = (undefined4 *)((int)local_b8 + 4);
            local_78 = 0;
            do {
              if (local_7c != 0) {
                local_8c = 0;
                local_9c = local_60;
                do {
                  lVar29 = FUN_0004f990(local_9c,local_bc,0,pbVar5);
                  local_9c = local_9c + local_44;
                  lVar30 = FUN_0004f990(local_9c,local_bc,0,pbVar5);
                  uVar19 = local_20[0];
                  local_9c = local_9c + local_44;
                  if (pbVar5 == pbVar16) {
                    uVar11 = dcgettext(0,"Corrupt file name list\n",5);
                    warn(uVar11);
                    goto LAB_0005cd30;
                  }
                  if (lVar29 == 1) {
                    if (lVar30 == 8) {
                      local_ac[-1] = pbVar16;
                    }
                    else if (lVar30 == 0x1f) {
                      if (local_20[0] < 9) {
                        if (pbVar16 + local_20[0] < pbVar5) {
LAB_0005cc49:
                          if (uVar19 - 1 < 8) goto LAB_0005cc55;
                        }
                        else {
LAB_0005cc3d:
                          if (pbVar16 < pbVar5) {
                            uVar19 = (int)pbVar5 - (int)pbVar16;
                            goto LAB_0005cc49;
                          }
                        }
                      }
                      else {
                        uVar11 = dcngettext(0,
                                            "internal error: attempt to read %d byte of data in to %d sized variable"
                                            ,
                                            "internal error: attempt to read %d bytes of data in to %d sized variable"
                                            ,local_20[0],5);
                        error(uVar11,uVar19,8);
                        if (pbVar5 <= pbVar16 + 8) goto LAB_0005cc3d;
                        uVar19 = 8;
LAB_0005cc55:
                        (*DAT_000b9dd8)(pbVar16,uVar19);
                      }
                      uVar11 = FUN_0004e690();
                      local_ac[-1] = uVar11;
                    }
                  }
                  else if (lVar29 == 2) {
                    if (lVar30 == 0xb) {
                      if (pbVar16 + 1 < pbVar5) {
                        iVar14 = 1;
                      }
                      else if ((pbVar5 <= pbVar16) ||
                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U)) {
LAB_0005ce4f:
                        *local_ac = 0;
                        goto LAB_0005cb51;
                      }
                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);
                      *local_ac = uVar11;
                    }
                    else if (lVar30 == 0xf) {
                      uVar11 = FUN_0004f990(pbVar16,0,0,pbVar5);
                      *local_ac = uVar11;
                    }
                    else if (lVar30 == 5) {
                      if (pbVar16 + 2 < pbVar5) {
                        iVar14 = 2;
                      }
                      else if ((pbVar5 <= pbVar16) ||
                              (iVar14 = (int)pbVar5 - (int)pbVar16, 7 < iVar14 - 1U))
                      goto LAB_0005ce4f;
                      uVar11 = (*DAT_000b9dd8)(pbVar16,iVar14);
                      *local_ac = uVar11;
                    }
                  }
LAB_0005cb51:
                  pbVar16 = (byte *)FUN_000530b0(0,0,pbVar16,pbVar5,0,0,0,0,local_20[0],0,
                                                 local_38 & 0xffff,0,1,param_1,0,9);
                  local_8c = local_8c + 1;
                } while (local_7c != local_8c);
              }
              if (pbVar5 == pbVar16) {
LAB_0005cd30:
                uVar11 = dcgettext(0,"Corrupt file name list\n",5);
                warn(uVar11);
                goto LAB_0005cd50;
              }
              local_78 = local_78 + 1;
              local_ac = local_ac + 4;
            } while (local_78 != local_94);
            uVar19 = *(uint *)((int)local_b8 + 4);
            if (uVar19 != 0) goto LAB_0005cdc0;
LAB_0005cd5b:
            uVar11 = *(undefined4 *)local_b8;
            pcVar6 = ".";
LAB_0005cd63:
            pcVar9 = (char *)dcgettext(0,"CU: %s/%s:\n",5);
            printf(pcVar9,pcVar6,uVar11);
          }
          pcVar6 = (char *)dcgettext(0,
                                     "File name                            Line number    Starting address    View\n"
                                     ,5);
          printf(pcVar6);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
          DAT_000b75e0 = local_40;
          DAT_000b75e4 = local_3c;
          DAT_000b75e8 = local_38;
          DAT_000b75ec = local_34;
          DAT_000b75f0 = local_30;
          DAT_000b75f4 = local_2c;
          DAT_000b75f8 = local_28;
          DAT_000b75fc = local_24;
          DAT_000b7600 = local_20[0];
          local_bc = pbVar16;
          local_9c = PTR_stdout_000b3fd8;
          lVar30 = lVar29;
          if (pbVar16 < local_48) {
LAB_0005ad11:
            lVar29 = lVar30;
            local_b0 = (uint)((ulonglong)lVar28 >> 0x20);
            local_b4 = (byte *)lVar28;
            DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
            DAT_000b9d00 = (uint)lVar29;
            pbVar20 = local_bc + 1;
            bVar13 = *local_bc;
            local_ac = (undefined4 *)(uint)bVar13;
            if (local_24._1_1_ <= bVar13) {
              uVar4 = (ushort)bVar13 - (ushort)local_24._1_1_ & 0xff;
              bVar13 = (byte)(uVar4 % (ushort)(byte)local_24);
              uVar19 = CONCAT11(bVar13,(char)(uVar4 / (byte)local_24)) & 0xff;
              if (local_2c._1_1_ != 1) {
                uVar7 = (byte)DAT_000b9d20 + uVar19;
                uVar19 = uVar7 / local_2c._1_1_;
                local_88 = (undefined1)(uVar7 % (uint)local_2c._1_1_);
                DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_88);
              }
              uVar19 = uVar19 * (local_2c & 0xff);
              lVar29 = lVar29 + (ulonglong)uVar19;
              if (uVar19 != 0) {
                DAT_000b9d08 = 0;
              }
              DAT_000b9d10 = DAT_000b9d10 + (uint)bVar13 + local_28;
              local_bc = pbVar20;
              goto joined_r0x0005af93;
            }
            switch(local_ac) {
            case (undefined4 *)0x0:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,local_48);
              if (iVar14 == 0) {
                uVar11 = dcgettext(0,"Badly formed extended line op encountered!\n",5);
                warn(uVar11);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                local_bc = pbVar20;
                break;
              }
              pbVar16 = pbVar20 + local_44;
              local_bc = pbVar20 + local_44 + iVar14;
              pbVar20 = pbVar16 + 1;
              uVar19 = (uint)*pbVar16;
              switch(uVar19) {
              default:
                pcVar6 = (char *)dcgettext(0,"UNKNOWN (%u): length %d\n",5);
                printf(pcVar6,uVar19,iVar14);
              case 1:
              case 4:
              case 0x16:
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                if (uVar19 != 1) break;
                local_ac = (undefined4 *)0xffffffff;
                goto joined_r0x0005af93;
              case 2:
                uVar19 = iVar14 - 1;
                if (uVar19 < 9) {
                  if (local_bc < pbVar5) {
code_r0x0005b20c:
                    if (uVar19 - 1 < 8) goto code_r0x0005b218;
                  }
                  else {
code_r0x0005b1f6:
                    if (pbVar20 < pbVar5) {
                      uVar19 = (int)pbVar5 - (int)pbVar20;
                      goto code_r0x0005b20c;
                    }
                  }
                  lVar29 = 0;
                }
                else {
                  uVar11 = dcngettext(0,
                                      "internal error: attempt to read %d byte of data in to %d sized variable"
                                      ,
                                      "internal error: attempt to read %d bytes of data in to %d sized variable"
                                      ,uVar19,5);
                  error(uVar11,uVar19,8);
                  if (pbVar5 <= pbVar16 + 9) goto code_r0x0005b1f6;
                  uVar19 = 8;
code_r0x0005b218:
                  lVar29 = (*DAT_000b9dd8)(pbVar20,uVar19);
                }
                DAT_000b9d20 = DAT_000b9d20 & 0xff00;
                DAT_000b9d08 = 0;
                break;
              case 3:
                local_94 = local_94 + 1;
                local_b8 = (byte *)FUN_0006b220(local_b8,local_94 * 0x10);
                DAT_000b9d24 = DAT_000b9d24 + 1;
                puVar17 = (undefined4 *)((int)local_b8 + (local_94 * 4 + -4) * 4);
                *puVar17 = pbVar20;
                sVar8 = strlen((char *)pbVar20);
                pbVar16 = pbVar16 + sVar8 + 2;
                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);
                puVar17[1] = uVar11;
                pbVar16 = pbVar16 + local_44;
                uVar11 = FUN_0004f990(pbVar16,&local_44,0,local_48);
                puVar17[2] = uVar11;
                uVar11 = FUN_0004f990(pbVar16 + local_44,&local_44,0,local_48);
                puVar17[3] = uVar11;
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
              break;
            case (undefined4 *)0x1:
            case (undefined4 *)0xa:
            case (undefined4 *)0xb:
              goto code_r0x0005af82;
            case (undefined4 *)0x2:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              local_bc = pbVar20 + local_44;
              if (local_2c._1_1_ != 1) {
                uVar7 = (iVar14 + (uint)(byte)DAT_000b9d20) / (uint)local_2c._1_1_;
                local_ac._0_1_ =
                     (undefined1)((iVar14 + (uint)(byte)DAT_000b9d20) % (uint)local_2c._1_1_);
                uVar19 = local_2c & 0xff;
                goto code_r0x0005ae5c;
              }
              uVar19 = local_2c & 0xff;
code_r0x0005c370:
              lVar29 = lVar29 + (ulonglong)(iVar14 * uVar19);
              lVar30 = lVar29;
              if (iVar14 * uVar19 == 0) break;
code_r0x0005ae7e:
              lVar29 = lVar30;
              DAT_000b9d08 = 0;
              break;
            case (undefined4 *)0x3:
              iVar14 = FUN_0004f990(pbVar20,&local_44,1,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              DAT_000b9d10 = DAT_000b9d10 + iVar14;
              local_bc = pbVar20 + local_44;
              break;
            case (undefined4 *)0x4:
              iVar14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              local_bc = pbVar20 + local_44;
              uVar19 = iVar14 - 1;
              DAT_000b9d0c = iVar14;
              if ((local_b8 == (byte *)0x0) || (local_94 == 0)) {
                pcVar6 = "\n [Use file table entry %d]\n";
              }
              else {
                if (uVar19 < local_94) {
                  puVar17 = (undefined4 *)((int)local_b8 + uVar19 * 4 * 4);
                  uVar19 = puVar17[1];
                  if (uVar19 == 0) {
                    printf("\n./%s:[++]\n",*puVar17);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  else if ((local_a4 == (undefined4 *)0x0) || (lVar28 == 0)) {
                    uVar11 = *puVar17;
                    pcVar6 = (char *)dcgettext(0,"\n [Use file %s in directory table entry %d]\n",5)
                    ;
                    printf(pcVar6,uVar11,uVar19);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  else {
                    if (local_b0 < (local_b4 < uVar19)) {
                      uVar11 = FUN_0004cb50(0);
                      uVar12 = dcgettext(0,"directory index %u > number of directories %s\n",5);
                      warn(uVar12,uVar19,uVar11);
                      pcVar6 = "\n <over large directory table entry %u>\n";
                      goto code_r0x0005b184;
                    }
                    printf("\n%s/%s:\n",local_a4[uVar19 - 1],*puVar17);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                  }
                  break;
                }
                uVar11 = dcgettext(0,"file index %u > number of files %u\n",5);
                warn(uVar11,iVar14,local_94);
                pcVar6 = "\n <over large file table index %u>";
              }
              goto code_r0x0005b184;
            case (undefined4 *)0x5:
              DAT_000b9d14 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              local_bc = pbVar20 + local_44;
              break;
            case (undefined4 *)0x6:
              DAT_000b9d18 = (uint)(DAT_000b9d18 == 0);
              local_bc = pbVar20;
              break;
            case (undefined4 *)0x7:
              DAT_000b9d1c = 1;
              local_bc = pbVar20;
              break;
            case (undefined4 *)0x8:
              uVar19 = local_2c & 0xff;
              iVar14 = (int)((ulonglong)(~(uint)local_24._1_1_ & 0xff) /
                            (ulonglong)(longlong)(int)(local_24 & 0xff));
              local_bc = pbVar20;
              if (local_2c._1_1_ == 1) goto code_r0x0005c370;
              uVar7 = ((uint)(byte)DAT_000b9d20 + iVar14) / (uint)local_2c._1_1_;
              local_ac._0_1_ =
                   (undefined1)(((uint)(byte)DAT_000b9d20 + iVar14) % (uint)local_2c._1_1_);
code_r0x0005ae5c:
              uVar19 = uVar19 * uVar7;
              DAT_000b9d20 = CONCAT11(DAT_000b9d20._1_1_,local_ac._0_1_);
              lVar30 = lVar29 + (ulonglong)uVar19;
              lVar29 = lVar29 + (ulonglong)uVar19;
              if (uVar19 != 0) goto code_r0x0005ae7e;
              break;
            case (undefined4 *)0x9:
              local_bc = local_bc + 3;
              if (local_bc < pbVar5) {
                iVar14 = 2;
code_r0x0005c4cd:
                uStack_84 = (*DAT_000b9dd8)(pbVar20,iVar14);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
              else {
                if ((pbVar20 < pbVar5) && (iVar14 = (int)pbVar5 - (int)pbVar20, iVar14 - 1U < 8))
                goto code_r0x0005c4cd;
                uStack_84 = 0;
              }
              DAT_000b9d20 = DAT_000b9d20 & 0xff00;
              lVar29 = lVar29 + (ulonglong)uStack_84;
              lVar30 = lVar29;
              if (local_48 <= local_bc) goto LAB_0005adb0;
              goto LAB_0005ad11;
            case (undefined4 *)0xc:
              uVar19 = FUN_0004f990(pbVar20,&local_44,0,pbVar5);
              local_bc = pbVar20 + local_44;
              pcVar6 = "  Set ISA to %lu\n";
code_r0x0005b184:
              pcVar6 = (char *)dcgettext(0,pcVar6,5);
              printf(pcVar6,uVar19);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              break;
            default:
              pcVar6 = (char *)dcgettext(0,"  Unknown opcode %d with operands: ",5);
              printf(pcVar6,local_ac);
              local_bc = pbVar20;
              if ((local_90 != 0) &&
                 (uVar19 = (uint)*(byte *)(local_90 + -1 + (int)local_ac), uVar19 != 0)) {
                for (; uVar19 != 1; uVar19 = uVar19 - 1) {
                  FUN_0004f990(local_bc,&local_44,0,pbVar5);
                  uVar11 = FUN_0004cb50(0);
                  printf("0x%s%s",uVar11,&DAT_0007c4b1);
                  local_bc = local_bc + local_44;
                }
                FUN_0004f990(local_bc,&local_44,0,pbVar5);
                uVar11 = FUN_0004cb50(0);
                printf("0x%s%s",uVar11,&DAT_0007bc55);
                local_bc = local_bc + local_44;
              }
              putc(10,*(FILE **)local_9c);
              lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              pbVar20 = local_bc;
code_r0x0005af82:
              local_bc = pbVar20;
              if (local_ac == (undefined4 *)0x1) {
joined_r0x0005af93:
                if (local_b8 == (byte *)0x0) {
                  pcVar6 = "<unknown>";
LAB_0005afab:
                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                  DAT_000b9d00 = (uint)lVar29;
                  pcVar6 = (char *)dcgettext(0,pcVar6,5);
                  lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                }
                else {
                  DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                  DAT_000b9d00 = (uint)lVar29;
                  uVar19 = DAT_000b9d0c - 1;
                  if (local_94 <= uVar19) {
                    uVar11 = dcgettext(0,"corrupt file index %u encountered\n",5);
                    warn(uVar11,uVar19);
                    lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
                    pcVar6 = "<corrupt>";
                    goto LAB_0005afab;
                  }
                  pcVar6 = *(char **)((int)local_b8 + uVar19 * 4 * 4);
                }
                DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
                DAT_000b9d00 = (uint)lVar29;
                sVar8 = strlen(pcVar6);
                if (sVar8 < 0x24) {
                  pcVar9 = (char *)FUN_0006b190(sVar8 + 1);
                  strncpy(pcVar9,pcVar6,sVar8 + 1);
LAB_0005ac8b:
                  if (local_2c._1_1_ == '\x01') {
                    printf("%-35s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);
                  }
                  else {
                    printf("%-35s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,
                           (uint)(byte)DAT_000b9d20);
                  }
                }
                else {
                  if (DAT_000b9da4 == 0) {
                    pcVar9 = (char *)FUN_0006b190(0x24);
                    __n = 0x24;
                    pcVar6 = pcVar6 + (sVar8 - 0x23);
                  }
                  else {
                    __n = sVar8 + 1;
                    pcVar9 = (char *)FUN_0006b190(__n);
                  }
                  strncpy(pcVar9,pcVar6,__n);
                  if (DAT_000b9da4 == 0) goto LAB_0005ac8b;
                  if (local_2c._1_1_ == '\x01') {
                    printf("%s  %11d  %#18llx",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04);
                  }
                  else {
                    printf("%s  %11d  %#18llx[%d]",pcVar9,DAT_000b9d10,DAT_000b9d00,DAT_000b9d04,
                           (uint)(byte)DAT_000b9d20);
                  }
                }
                if (DAT_000b9d08 == 0) {
                  putc(10,*(FILE **)local_9c);
                }
                else {
                  printf("  %6u\n",DAT_000b9d08);
                }
                DAT_000b9d08 = DAT_000b9d08 + 1;
                if (local_ac == (undefined4 *)0xffffffff) {
                  DAT_000b9d18 = local_2c >> 0x10 & 0xff;
                  DAT_000b9d00 = 0;
                  DAT_000b9d04 = 0;
                  DAT_000b9d08 = 0;
                  DAT_000b9d20 = 0;
                  DAT_000b9d0c = 1;
                  DAT_000b9d10 = (undefined1 *)0x1;
                  DAT_000b9d14 = 0;
                  DAT_000b9d1c = 0;
                  DAT_000b9d24 = 0;
                  putc(10,*(FILE **)local_9c);
                }
                free(pcVar9);
                lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
              }
            }
            lVar30 = lVar29;
            if (local_48 <= local_bc) goto LAB_0005adb0;
            goto LAB_0005ad11;
          }
        }
LAB_0005adb0:
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        if (local_b8 != (byte *)0x0) {
          free(local_b8);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
        }
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        if (local_a4 != (undefined4 *)0x0) {
          free(local_a4);
          lVar29 = CONCAT44(DAT_000b9d04,DAT_000b9d00);
        }
        DAT_000b9d04 = (int)((ulonglong)lVar29 >> 0x20);
        DAT_000b9d00 = (uint)lVar29;
        putc(10,*(FILE **)local_9c);
        uVar23 = pbVar5 < local_bc;
        uVar25 = pbVar5 == local_bc;
        if (pbVar5 <= local_bc) {
          return local_58;
        }
      } while( true );
    }
  }
  else if ((DAT_000b9db0 & 2) != 0) {
    FUN_0004eb80();
  }
  return 1;
}

